Friday, February 27, 2015

Two photos with natural effects

Having recently joined a site for photographers I'm having a great time learning, like by studying great examples of incredible pictures from lots of expert photographers, and you also get advice on handling your own pictures.

Which means I'm finally learning more about photo editing. So will admit, mainly because I wasn't that serious yet, have just thrown up pictures on the web the way the camera presented them. Which is easier, so it's not that I was ever against photo editing, just didn't feel serious enough to do it with my own, but now am learning.

With that said, looking for an opportunity to share from the site, since I recently arrived and want to see what that looks like. And though I didn't do photo editing I have two photos which I think have natural effects. But it's just what the camera captured. So any effects are what it did, not me. And in these examples the camera was on my smartphone a Motorola Droid2.

Both of these photos are from the Winter of 2012, in San Francisco, and I've given them before in various places, but this way can share from my new profile.

The photo looks sort of black and white but is in color. It was just a grey, wintry day. You can see the color in the trees, the taxi towards the back, and the bow and arrow, called Cupid's Span.

So no photo editing was done here. It's just what the Droid2 decided to capture.

Next the camera properly focused on one guy happening to look to the side, and you get this blurring from other elements because they were moving, which I like.

And again no photo editing was done. Pictures are just what the camera decided it wanted to take when I hit the button.

And that's enough for this check to see how photos pull in from the site.

So far looks like a better way to do it.

Now I can keep my best photos central to one spot, from which I can share easily.


James Harris

Wednesday, February 25, 2015

Exceptions and logic

One of those fascinating things to me is the power of thinking that comes with coding for computers, which introduces the necessity and power of exceptions.

Doesn't seem like much? Well consider these two examples:

Consider a small village where all men are shaved, the barber is a man, and the barber shaves all and only those men who do not shave themselves, except himself, as the barber shaves himself.

Remove the exception and you run into problems as explained here.

So let's handle the abstraction: consider a set that includes all and only sets that exclude themselves, except itself.

So clearly the first example can exist! You can have a village with the conditions given.

But what about the second example?

If we follow the pattern from the first, it seems there's no reason for it not to exist! As the exception is key to making it logical.

Here remove the exceptions and the results do not work. Prior to computers maybe that was an impassable hurdle and seemed like something magical to the people who spent endless hours puzzling over statements similar to them with the necessary exceptions missing. Their thinking quite simply, was too primitive for the task.

All that effort through years by very intelligent people and I can just type up a quick post which you can read through in a few minutes.

Our civilization is far more advanced today than it was for those who ran in circles without realizing the full power of exceptions. 

We think differently in the modern age--thanks to computers.

Thinking I should tone down this post, but the concept is interesting enough for me to leave it in its strongest form.

That our tools shift our mental approach is not even something I came up with, as really was fascinated by it being mentioned as key in a TED talk by James Flynn.

It got me to thinking again about this area: what if prior people simply thought in a way that made it difficult to handle these things which they called "logical paradoxes" which is an oxymoron because their minds weren't quite ready for the answer?

James Harris

Tuesday, February 24, 2015

Counting primes, posting again

Turns out possibly the best available way to learn how to count prime numbers is also one of the easiest to show.

With ints or longs--where pj is the jth prime:

P(x,n) = x - 1 - sum for j=1 to n of {P(x/pj,j-1) - (j-1)}

That summation will count primes if you make sure n equals the count of primes up to sqrt(x), but no higher.

There is nothing else discovered that is as simple that is also as fast.

An example of it counting primes is with P(100,4) = 25. So then it counts primes up to 100, where there are 25, and needs to be told the primes up to sqrt(100) = 10, and there are 4 of them. And those primes are: 2, 3, 5 and 7.

That's using the form where it needs to be told the primes up to sqrt(x), but you can fully mathematicize it into a form where it finds them on its own. But that slows it down and it looks a little more complicated.

And I've posted about it before.

Have had it for over a decade. Came across it as a problem solving thing, just started thinking to myself about counting prime numbers.

James Harris

Thursday, February 19, 2015

Enjoying photography is easier

Yesterday finally joined a great photography site which is and wondering now what took me so long! It's been nice to put up some of my pictures and have people actually showing they like them and even better looking around at great photos from others.

It took the web for me to fully embrace my love of photography as it's made it so much easier.

For someone like myself technology has allowed so much more than buying an expensive book of photography, rarely, or mostly browsing them in bookstores, or checking books of photographs out from the library.

And now I can even put up some of my own! And share them.

Oh yeah, posting about it to note that rarity of the thrill when you come across a web community where you're just giddy with excitement. And so far haven't noticed any downsides. Which is so HUGE, as sad reality I've often faced on the web is quite different. Things seems to be so much fun until they aren't.

But no point expecting negatives. And here I don't. I've known about the site for a while and even had some interactions with it for some time. Increasingly that's the way I like to do it. Take your time on the web. You have to watch websites over time.

Which explains what took me so long. Like I didn't know.

So for now everything looks good, literally and figuratively.

James Harris

Monday, February 16, 2015

Benefits of community perspective

Seems to me when you think about community, especially a healthy one, you don't imagine people charging each other for everything. And in fact money is usually considered separately from within community though important for the community to have. And that perspective helped me out immensely when I started trying to figure out what was going on with my open source project.

When I first officially became an open source developer by putting my project Class Viewer on SourceForge back February 2004, I wasn't sure what might happen. Guessed anything from it could simply bomb or that it could bring vast amounts of attention for which I wasn't sure I was ready. And vaguely thought that if the latter there might be some way to monetize to some extent.

Over a decade later I'm puzzling over what actually happened, and gained insights by realizing that I provided a valuable tool for the Java software developers community as evidenced by continuing downloads, and it was best to push the idea of money completely out of the picture.

And from a community perspective I'm quite satisfied as I posted memorializing 10 years, where I noted over thirty five thousand downloads from over 150 countries, which I think can be considered indication of usefulness. And downloads continue.

With so many posts on other subjects some may wonder if project development will continue, and as far as I'm concerned it will as the project is still supported. Just don't have anything else I want it to do as of yet, and I've been pondering other subjects.

It's interesting to me that the more community level your project is, the less money I think will be involved, unless you can pull in advertising, as people don't tend to associate handing money over for community type things. Or that's my theory, as I sat down and worked out my own theory of money, which I've posted about before, as yeah, still need to make it, but a community type project is NOT the way, in my opinion.

And have to emphasize it's my opinion as maybe others find something different, but I've seen plenty examples by now that seem to indicate the truth of that perspective, and why wouldn't it be that way? Fostering community is a different world than trying to get people to hand over money for some product or service.

And in fact profit as a primary motivation has long been seen as detrimental to community.

So there's kind of a conflict I think where people who figure out how to make money are currently the heroes, because hey, plenty of people want to be rich, while those with more community type project, like a lot of the work to build web structure globally, which is mostly open source, are showing up in the news as being impoverished.

Of course if you understand money then you know why, and it's no more of a big deal than noting that water is wet.

James Harris

Saturday, February 14, 2015

My contemplation on radio

Was pleased to see on social media that recently was World Radio Day. And I grew up listening to the radio and it was a wonderful gift, as I realize MOST of the music I've heard in my life, I'm sure I heard on the radio. And, um, didn't have to pay for it, which I emphasize to talk about some of the weird that came with the rise of the web.

For instance, I'd see emphasis on this supposedly stunning damage done by the web, where people would claim that every listen of a song by someone who didn't pay was lost revenue!!! It was as if they had never heard of radio.

Um, for those of you who haven't heard, on the radio, gasp, they play music without asking you to pay. Some might retort, but yeah, you have to listen to ads.

Yes, but the ads pay for the radio, they do NOT pay the music artists.

How many people I wonder thought that artists get paid for radio plays?

Well, they do not. Radio is considered promotional. Which is a great perspective, and it's also pertinent I think to open source. For instance, you're possibly reading this post because of my open source project. It may be why you know this blog is here.

Promotion is great! And things operated just fine with a system where artists could hear their music and songs on the radio, being listened to by millions of people and be gratified without getting paid a penny for it.

But what about all this noise about the horrors of the web in supposedly attacking the music industry? My answer: It's all about distribution.

Turns out that music executives had a very profitable way of selling music to people which radio helped promote. All that promotion helped get people into music stores where they would mostly buy albums.

This physical movement of humanity drove a profitable business model which employed lots of people including people in the middle between the artists and the fans, including those music executives!

But, in contrast, the web allowed direct distribution--artists could conceivably get their music directly to fans without any of those people, including the music executives.

And it turns out that people quite prefer downloading their music versus getting up and going physically to some location to buy some physical thing.

After all, they just want the music, right? I know I do. Why do I also have to have some clunky piece of plastic with the music on it?

But those clunky pieces of plastic were profitable to music executives, and others admittedly as well. They wanted people to buy this  plastic stuff with music on it, whether they needed it or not!

So the music executives fought the web, and the web won.

The web is quite simply a much more preferred distributor of music. I know I like it.

Today a lot of listening to music is, I think, still promotional. And a lot of it is still through traditional radio where artists still aren't getting paid--yes web radio is a bit of a different animal, where they may--but do you hear whining from music executives about the horror, horror, horror of it?

People today are listening to music through so many other ways, and yes, people like me, when I find music I love, I love supporting the artists and will pay for it, just like before.

So the web didn't really change what was important. It just helps us to see what that important thing really is.

And with music, the best relationship is the direct one between the artist and fans.

Which the web simply strengthened.

Oh my, given the holiday today, isn't that sweet? I think we can call it a true love.

Such a beautiful thing to contemplate.

So radio, can you please be my Valentine? I do so love you.

You have been there for me and millions around the globe for as long as I can remember. Thank you.

James Harris

Sunday, February 08, 2015

Following humans

Wow, it occurs to me that using a certain phrase in a title can drive traffic and with two recent posts high in the list of popular ones with that phrase in the title I will avoid it for this one. I'm not just interested in popular. Don't mind it. Like to study it. But don't chase it.

But the subject area is so fascinating I'll see what happens without explicit mention of that particular phrase with a subject that is important to me, which is trying to be sure you're following an actual human being, behaving like one, when you're out there, on that thing, which I won't mention, like on Twitter.

One thing I will admit I use is the follower to followed ratio. If you have more followers than follow you, then I am unlikely to follow you, unless it's clear you're ok from other sources. For instance I follow a lot of political reporters on Twitter who often follow more people than follow them. That's ok. But I follow them either from their organizations, or from other political reporters, like who follow or retweet them.

To me the issue of following actual human beings behaving like human beings versus a bot, which is following TONS of people, while only a few follow, only to drop them if not followed, and tweeting machine-like with things over and over again, is one of those issues where I'd like to brainstorm an answer, but it's also an area where a solution doesn't occur to me beyond the obvious.

And obvious to me is: if an account is behaving like a machine, maybe those running organizations should do something about it?

What good is such an account?

I mention Twitter but, hey, is it an issue for me elsewhere? Pondering.... Still thinking, but also typing which is interfering with my typing so should stop and serious consider...oh yeah! Have had a few cases on Google+, and roughly same as on Twitter now that I think about it, but that's maybe once a week or two? And only when I'm tweeting a lot? Or on Google+ posting a lot?

It's weird: it's like the very behavior certain companies want from you attract the kind of followers you don't want! While NOT doing that behavior so much, like when I don't tweet that much and post more rarely then I'm more protected, I think. Though haven't done an objective study of it.

I don't think that's the answer companies like Twitter and Google+ want though.

So good luck following humans out there! Interesting that I assume that's what people want. And thanks for the surge of people who web analytics are telling me are showing up, though I'm not sure what you're doing once you get here, or exactly why you came. But you're welcome regardless and I just don't want you disappointed. So let's see without mentioning that certain subject, though this post is actually about it, how popular it will be.

James Harris

Saturday, February 07, 2015

Social media escapes me

Was pleasantly surprised to see a post surveying my own use of social media become my most popular post, but then I wondered if maybe it was just the title. After all even in the post itself at the end I noted my meager follower counts which actually suits me just fine. I've never been drawn to the idea of tons of people paying attention to things I put out there. Seems like unwanted pressure.

My own strategy is to focus on ideas. Throw them out there and see if anything happens.

So do I think I have valid points about social media nonetheless? Sure. I like my own opinions, which I think is kind of a built-in thing with most humans.

Got a blog so I can express them. Are they correct? Time will tell.

And I don't think not wanting or having lots of followers is a prerequisite to understanding social media any more than being a millionaire or billionaire is prerequisite to understanding money, on which I also have opinions, without having much of that either.

The other reason I talk things out is because I do that on subjects that interest me. And social media definitely interests me while I readily admit it escapes easy analysis. A lot of the time I'm very much puzzled by what I'm seeing.

But at least there I figure I have plenty of company.

Regardless happy the post was so popular, even if I'm not sure why it was. The explanation there escapes me too.

James Harris

Thursday, February 05, 2015

Considering a naive coding area

One problem I don't think gets addressed enough is how badly some people are educated, especially when it comes to code. And if it is public on the web then yeah, it can reflect on you, so I thought I would help out with a common area which has turned into a pet peeve of mine, and that is when I see implementations of bad prime counting approaches publicly online.

The reason I search on the subject is I figured out over a decade ago a really simple approach to counting prime numbers that tweaked techniques previous known, resulting in a simple iterative summation, which is so simple I can give it in a single line:

With ints or longs--where pj is the jth prime:

P(x,n) = x - 1 - sum for j=1 to n of {P(x/pj,j-1) - (j-1)}

It counts primes when n equals the count of primes up to sqrt(x), so if n is greater than the count of primes up to and including sqrt(x) then n is reset to that count.

For example P(100,4) = 25. You can just code up from the instructions given and verify easily enough. Notice you'd need 4 primes--2, 3, 5 and 7.

And I've posted that before. Actually I post about it a LOT, but am mentioning it now to highlight just how bad it can really be out there. And how often people learn crappy things in coding.

It is the fastest, short prime counting algorithm available on the planet.

The only other things as short are not as fast. The algorithms that are faster are not as short.

I like to call finds of mine that are better than anything else in the world, my toys. I use them to critique what other people do.

Notice it involves extremely basic math, so claiming you're not good at math is not a valid excuse. If you know how to divide and how to throw away remainders then you can comprehend it. Using ints or longs is so the computer will do that throwing the remainder away for you.

And it can be optimized which bored me decades ago as I realized it then just approached the currently known fast prime counting algorithms. I get bored with known. I prefer the unknown.

So if you dare post ANYTHING about counting primes, and I find it, and it is naive, especially the most horrendous which is to just divide a long list of numbers by every prime, then unfortunately I will think less of you, and wherever you got your education.

And I think that worth mentioning to help people who may not realize that yeah, such things might get noticed. I know I notice them. And it is such a preventable thing. Don't post naive coding practices. Just don't.

Oh yeah, if you want to know how fast your code should be if you dare to post prime counting code, I put up a post with a benchmark. That is with somewhat optimized code.

Sorry, just a little bit irritated. And yes, I dutifully worked to get my algorithm widely known, like with what I'm doing here. Keep talking about it, but these things can take a while. But some people labor under the misconception that they actually are learning good things, when they aren't even learning quasi-decent in an advanced world where a lot more is known than you are necessarily being taught.

So yeah, a LOT of the point of this post is to highlight the algorithm. It IS the best in the world as described but I'm having problems getting it properly acknowledged and that's sad. It's a lot more fun to code than anything else for counting prime numbers, especially at the basic level, while being faster than anything else available for its size.

I'm using this example as it's very demonstrative I think.

Is it really an issue if you have some pathetic prime counting code I come across? I don't know. Probably not. But I am being honest, I do see it at times, and just wonder what people are thinking. Or better yet, wish they were being taught better, since better is available.

James Harris