The personal nanoeconomics of a geek begins typically in his childhood, when he gets his hand on his first computer and his parents detect that he is spending more time with computer than other children do.
Other children have several hobbies, the geek has only one. So that while others can typically dance, play guitar or sing, play some kind of sport, and can talk about various far countries they have visited, the geek can only support flame wars about static type-checking.
Other children socialize. So that they later have friends, business network, partners and beloved ones. Geeks are often lonely and eventually learn how to get used with being alone and living without support of friends.
Other children learn how to cook, fix things at home, drive a car, punch into faces of various assholes, etc. Geeks don’t learn these things that much.
Geeks spin and twist their brains during education. Others spend the absolute required minimum of time and efforts in the school and college, so that they have time for making money, more socializing, or just hanging out.
As a result, geeks are good in software development, and others aren’t.
Being a geek is a huge investition. It is hard to valuate absence of private life, but I think we’re talking about millions here. The geek itself might even not realize his investition, thinking that spending life like he does is just a huge fun and right way to do, but it is an investition never the less, and at least when he’ll stop getting fun from software development, he starts to realize it.
This investition pays off, when the geek finds his first job. He doesn’t necesserely earns more money than others, but at least he gets a huge moral reward of being a micro-copy of god in his virtual universe.
So far, the skills and abilities of a newbie geek were continuously increasing.
But rather sooner than later the geek will hit a job not allowing him to develop himself. No matter why. That can be a programming technology rapidly going out of fashion, a need to support a legacy system all the time without the ability to use any of essential software development skills, or just repeatedly unrealistic deadlines not allowing to finish anything.
And then, the geek will realize in what kind of situation he is. While his already huge, and constantly increasing investition still allows him to work as software developer, he cannot stop and make a pause, because the software industry will rapidly devaluate his investition. Geeks have to constantly develop themselves, otherwise they could land in a nightmare and become an idiot both robbed of a private life, jobless, and too old to start making contacts and partnerships.
Geeks are always striving to produce a good, or when possible, the best software, and they are always trying to apply whatever new cool technology that would improve their CV and their standing on the job market. Other people often think that it is because geeks are irresponsible children who only want to play with bytes and ignore the business. Some of them are even going further and believing that geeks either cannot or don’t want to care about the business at all. Well, they might be right. I suppose, 5% of geeks are really childish. And the rest of us can clearly feel the merciless rules of economics on our own skin.