Climbing the wrong hill
cdixon.org
cdixon.org
I think it's much more reasonable to guess that this guy's reluctance to do the startup dance is the result of more complex considerations. His current job is safe; not glamorous, sure, but safe. He's probably making good money, and even if he doesn't really enjoy it, he's just found out that other people actually want him. That can be a powerful motivator by itself.
The startup thing is risky. Talking about it is all well and good, and we can make startups sound really sexy because they're what we prefer or need to do, but that doesn't mean that they're really for everyone. People might like the idea of startups, but when it comes to the actual risk, guesswork, and extreme hard work associated with them -- not so much.
I mean, hell, I'm working on my second one now, and I couldn't imagine working for anyone else ever again (or sitting in a cubicle). On the other hand, there are definitely days that I would love to not have to worry about whether or not I'll find enough business to pay the rent a couple of months from now. I haven't had a real get-away vacation in I-don't-know-how-long, and my average work day is probably around 11 hours long. I honestly don't know how my girlfriend puts up with it. And, I'm constantly thinking about one business or the other; it's not like I can just "punch out" at 5 or 6 o'clock each day and not think about work until the next morning.
So, yeah. Startups aren't all roses, and maybe some people are smart enough to figure that out before they jump into them.
A person looking for for purpose in life might have much more limitations than a hill climbing algorithm. He/she also has different advantages than such algorithm, so I do not think this is very good analogy.
Suggestions?
Toby Segaran, author of the highly esteemed and good-read Programming Collective Intelligence (published by O'Reilly, so you know it's good), released all of the source code that he talked about in the book. You can find it all here on his blog: http://blog.kiwitobes.com/?p=44.
He talks about hill climbing and variants (random restart, simulated annealing). He does a great job of explaining the algorithm and the math behind the hill climbing decisions. For optimization, something hill climbing is not even the best tool. Look at some of the other optimization strategies he employs (specifically the genetic mutation algorithm).
I highly recommend buying the book, even if only one chapter currently interests you. I bet you the other chapters will too. It's on Amazon, and at B&N if you want it this second.
I do know that hill-climbing isn't always the best strategy - I've got experience. What I'm lacking is knowledge of people from other disciplines doing things in an organised and more complete manner. This is a good start.
I've also found AIMA stuff on Google - http://code.google.com/p/aima-python/ - which claimsto be a Python implementation of algorithms from Russell and Norvig's 'Artificial Intelligence: A Modern Approach'
http://en.wikipedia.org/wiki/Particle_swarm_optimization
I found this book a very enjoyable read (edit: and a lot less intimidating than the Wikipedia article!). Be warned, though, that it's one or two chapters worth of technical detail. The rest goes to motivating the subject and exploring its philosophical implications. And that is OK, because the algorithm is actually quite simple.
Who climbs a hill they don't know in the fog, starting already lost and without navigation kit? Silly computer scientists.