Skill Transitions Over Time

In case you missed this tidbit, from a while back from Tim Bray, you should check it out and come right back. Done reading? Good.

I found the second graph by far the most interesting. It is another variation of the classic S-curve representing Innovators/Early Adopters/Late Adopters/etc, but this one maps all the different skills in relation to one another. This is what I thought was the most interesting.

Anecdotally, we can pretty clearly establish that VB and Windows Administration are correctly in the “Mature Skills” area. Nearly all developers have written a VB app at some point and almost all can administer their own boxes. Thanks to the simplicity of VB, Microsoft convinced an entire generation of English majors that they can be software developers. In addition, a quick perusal of job sites – and their corresponding wages – can show us that Mainframe and COBOL development are legacy technologies.

I find the placement of XML and Java more interesting. I can understand that many people are looking for Java, but I have found that in many cases it (well, jsp) is being eclipsed (no pun intended) by the uptake and deployment of PHP in the open source community. The competition of the various Servlet Containers – Tomcat, JBoss, etc – probably fuels some of this because they can be difficult for novices to deploy and each has its own little quirks. It seems to be causing a fracturing in the efforts here.

I find it stunning that XML is still considered an “Emerging Skill” as I've been working in it extensively for well over 4 years and it feels like old hat. I've mentioned before that XML is Not the Silver Bullet yet you'd be amazed how many requests I get to “just put everthing in XML and we'll do the rest!” I've encouraged numerous customers to consider other things and only use XML as an interchange format – in a WebServices manner – but some simply don't care.

More than anything, this graph and quite a bit of experience scream to me that *every skill* will go through this cycle. It will be hot and worth top dollar because most people no one can do it, then everyone will be able to do it and it will be worth nil, then it will be legacy and worth top dollar because most people will have moved on and new grads won't get into it. Make sure that you have skills that fit both your interests and where you want to be. If VB is the only thing you've picked up in the last 5 years, prepare to get paid minimally until you're the last one. I knew an mainframe genius at a former employer who was making $200/hr because he built the system from the ground up and was the only one who knew how to keep it going.

Some people are amazing by this… some call it Supply and Demand.