Friday, October 10, 2008

Following ‘Hot’ Technologies

To maximize your marketability, should you learn .NET or LAMP? Or Java? C# or VB.NET? PHP, Perl, or Python? Flash/Actionscript or Silverlight? Ruby on Rails? Or something else? What technologies will be hot a year or two from now? Or in five years?

There is no easy answer to this question. The marketplace is littered with corpses of technologies that were once considered ‘hot’ but which are now shunned. I’m thinking for example of (in no particular order) CGI, EJB (v1), MFC, TCL, etc. Going back further, you might remember such fallen stars as Delphi, PowerBuilder, and Sybase. Heck, if you go back far enough, I still remember when Turbo Pascal was considered hot stuff.

Even now there are technologies which were recently hot but which are on the wane. I’m thinking of things like Cold Fusion and classic ASP. There is still some demand for these skills, but I foresee that declining in the future as companies transition to other technologies.

Looking ahead though it’s impossible to see what technologies will ‘prevail’. Most likely there will be several technologies that thrive within their respective segments; there’s no reason that a single technology has to dominate everything.

Right now, I’d say that .NET, Java EE 5, and LAMP are all good choices for a career in web development, with the ‘P’ in LAMP being PHP, Python, or Perl. Internal IT departments seem to favor .NET and Java, while most startups lean towards PHP. Ruby on Rails is also becoming increasingly popular, though a lot of people remain skeptical about Ruby for large scale applications. Of course in five years the picture may be very different.

My advice? It’s similar to what I posted last time. Pick an area of specialty, whether it’ s.NET, Java, LAMP, or RoR, but read up and stay current on the other technologies. In this fast-moving technology world (and a fast-changing economy), you want to hedge your bets wherever possible.

No comments: