Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The individualists turn into hard bargainers as they carefully probe their own market value and frequently re-negotiate relationships. They carefully invest in keeping their skill-base current and avoiding being shunted into the sunset end of the ecosystem for as long as possible. This sort of developer likes to hedge bets, stay invested in multiple projects and keep one foot in the open source world at all times. They position themselves for massive upsides when that is a possibility, and the ability to walk away from failures with their own reputations intact where there is real risk.

Full agreement on this point. Once I started looking at my own career from this perspective I couldn't stop. Books like The Passionate Programmer and The Pragmatic Programmer as well as heaps of prose from pg, patio11, edw519, and tptacek guide my continuing quest for increased leverage.



The article described old-guard programmers who mastered a technology and then couldn't find work when the technology died off.

I have a hard time understanding this: programming skills are extremely transferable and learning the hot language/platform of the month isn't extremely difficult. Is it just inertia that prevents them from doing this?


> Is it just inertia that prevents them from doing this?

I don't think it's just inertia, at least not in my case. I know that my example it's just anecdotical, but I'll write it down anyway.

I'm in my early '30s, I've been programming in Python for 7 years now (and during the last 6 years I even got paid for the privilege), along with other languages (PHP, JS etc.)

The thing is there's only so much that you can learn about the world around you by focusing on only learning programming- or tech-related subjects. Of course that, for example, learning Erlang or Caml are extremely interesting things to do, intellectually speaking, but when I realized that by learning to speak Arabic of Farsi I could potentially be able to interact with and to better understand the culture of tens if not hundreds of millions of people then my interests slightly changed.

Of course that it wouldn't help me one bit if I were to tell my potential future interviewer "hey, I learned to speak Farsi so now I can really read Hafiz's poetry the way it's supposed to be read", but as long as that experience enhances my understanding of the world around me it's all for the best.

Re-reading what I wrote I realize maybe it doesn't make much sense, anyway, what I wanted to say it's that most of us, programmers, are (really) smart people, it comes a point in one's life when you realize that there are other things in life worth spending your time on.


Good point. I learned to dance tango in similar situation. And I never danced anything in my life before that. I'm approaching the magic 42 number of my age.


Ian Eslick put it interestingly (http://ianeslick.com/using-100-of-your-brain):

"If we really want to become smarter, we will have to resort to the hard work of building more effective representations within the existing processing capabilities of our brain. Modern neuroscience backs me up here (e.g. summary in nice NPR interview); the process of compiling our experience into higher and higher order patterns that we use to structure future experience is what makes the judgement of experts more efficient than that of a novice (not always more effective, as the higher order patterns can also limit our generative abilities)."

You can be a very effective developer (at least in certain contexts) without building robust mental representations which allow you to assimilate newer techniques easily. And there can be cases where this is an advantage.

So more concretely, people recommend learning tools like Lisp, to give your mind mind practice with a more abstract, meta way of working. (So you can explore and rejigger new ideas without necessarily writing a classical compiler and idiosyncratic language from scratch.)


As a full-time developer with a family, it's not as easy as it seems to pick up the hot language/platform of the month, especially to learn it deeply enough to compete with people who have been working with it for years. (As everyone knows learning requires doing, and that takes time that is hard to come by.)


Inertia, other life priorities, all types of things.

I think one of the things that's hard for people is that thinking along a particular type of technology for people creates a type of mental rut that means subsequent thinking tends to go down the same rut.

By this, I don't mean it so much as the 'stuck in a rut' sense of being unable to escape, but more of the fact that it's hard to approach a problem without using an existing mental pathway you've spent years using.

It's like trying to learn a new (spoken) language - you tend to try and think in your old language and do the conversion, rather than think in the new language. The people who can pick up new languages quickly apparnetly have a good ability to skip over these mental ruts and embrace new types of thinking quickly.

So people struggle initially to understand new technologies because it might require a different type of thinking. And they may also have no chance to practice these skills without leaving their existing job, which might involve a significant cut in income and/or a relocation.

Of course the end-run around this is to be involved in an open source project in the new technology, and try and pick up work through those avenues.

The other issue is that, as a technology gets mature, as long as it is still being used, the dollar rewards tend to go upwards as time goes by. I personally know of guys who still work on database systems written in the 1980s which predate relational databases. They are the only ones who know it, and are pretty much untouchable for both domain and technical knowledge. They get to work from home for large money and are off-limits as far as cutbacks and layoffs. Of course, this all happens up to the point a new system is put in place, but, as the article says, old systems are geographical layers, so businesses can tend to build on top of the old layer and glue it together with middleware, rather than do a bottom-up rebuild.

So if you're making big money doing something you can do with your eyes closed, and are indispensable, there's not a lot of incentive (beyond intellectual curiosity) to switch out into a new stream. The people I know are financially set anyway, and they just see it as a revenue stream that will one day dry up, but are happy to keep taking it while it comes in.


From a personal perspective, besides the many aspects already mentioned by others, there's also the simple lack of challenge.

I've already mastered an x-number of technologies in my 25 years as a developer, I'm 100% certain I can deal with the umpteenth new one (albeit a bit slower than I used to). I already know I can program, and what my strengths and weaknesses are in that area. I'm more motivated to take on challenges I might actually fail at, or learn something new about myself.


It isn't an old guard thing. It is a personality and strengths thing. I am not particularly old guard (I am 37), and while I am about average in the technologies I do know, I suck at learning new platforms/technologies. It's like pulling teeth.

Those who are good at it just don't get how hard it can be for those are not quick learners in this sense. This is part of not knowing their own value -- claiming that learning new languages is "easy." It is. For them.


I dunno, I guess I'm of the mindset that the waves are coming, and you're either on them or under them. These days, I get antsy if I get enough time in one stack that I really feel like I have it cooking. Which is how I've clawed my way up from the embedded programming basement all the way up to javascript now. (Aside: sweet jesus, how do you web guys put up with javascript? It's like java and ml's thalidomide baby.)


Why do you think we've turned to Coffeescript in droves?


The article lightly eluded to the fact that the 10x'ers are able to transcend this, as a developer in his late 30's and a 10x'er I have seen it, my (guild) is getting younger and younger. Burn out has taken some of my age peers, while comfort or riches have taken others. Meanwhile, I keep on ticking, adopting the new stuff as soon as it comes out. There does come and age though where burn out sets in, and you either just start doing a job, or you drop out of the industry all together. I had one bad burn out in my early 30's in which I tried to leave the industry, but pastureing just does not seem to be in my nature. We will see when I am in my late 40's.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: