The world of technology development is constantly changing, and the smart technologists and smart companies are changing with it. It’s just the way it is. The need to constantly learn new stuff is baked into the process. Do it or fail.
Early on, I was a Microsoft ASP / VB6 developer. Then I went object-oriented, and evolved into an Enterprise Java developer / architect. It was obviously the way of the future. So I jumped, and never looked back.
Then Microsoft fought back with C# and .NET, which was just a copy of Enterprise Java. Picked that up too, though it was more of a lateral move than a progression.
Then Flash & Flex via ActionScript 3, though I didn’t go as deep into that as Java and C#.
Now they’re (mostly) all dead.
Java is the exception for several reasons, but it’s market position is evolving too. It’s the language of the mobile Android platform – the mostly widely distributed smartphone and tablet operating system in the world. It also remains one of the preferred languages for extremely high-performance server requirements, which makes up for some of its shortcomings against more modern dynamic languages like Ruby and Python.
Finally, the archaic Objective C language remains healthy because it’s the language of Apple’s iOS – the operating system of the iPhone & iPad. I am hoping that MacRuby will soon offer a viable alternative though, since Apple already includes it natively in iOS (though it’s not accessible yet to developers).
So what’s the point I’m making? Well, it’s this…
If you’re still developing in Adobe Flash & Flex, Microsoft .NET, or Enterprise Java, then you’re working on legacy platforms which are dying. Time to change things up.
Java developers need to focus on Android. That’s an easy switch-over. Alternatively, go to Ruby – which is a beautiful and highly-productive dynamic language which is becoming very popular. Or Scala. Or Python.
Finally there’s ugly Objective C for iOS (iPhone & iPad). I use it. I hate it. But it’s the mighty leader in mobile app development, so I’ll just have to deal with it. If you want to do iPhone & iPad, do it. (At least until MacRuby becomes viable on iOS.)
In summary, going forward…
GOOD: Ruby / Rails, HTML5, JQuery, CoffeeScript, SASS
BAD: C# / Microsoft .NET, Adobe Flash & Flex / ActionScript 3, Enterprise Java