What Languages will succeed in 2011?
I’ve personally been at a bit of a turning point when it comes to choosing programming languages for projects. I work mainly in PHP & MySQL for work, I use a lot of C/C++ in schoool, I have a couple side projects built on Ruby On Rails, and when I want to be a script kiddie I use Python. Also, time allowing I’d like to improve my Italian.
Looking at the TIOBE index* and the trends over the past couple years have given some insight into where languages are going, and the results are pretty shocking. Several Things stood out to me:
Java Is Dying
There are several complaints about Java’s slowness and verboseness, but it’s always been an enterprise and scholastic darling. I was surprised to see how much it had fallen off in recent years. C# seems to be the most likely candidate to take Java’s place, It has a lot of it’s benefits with a lot more to offer, i.e. the .NET framework.
Ruby and PHP are treading water
Another revelation that suprised me. I got my start in web development learning PHP, and it’s still my bread and butter for a lot of things I do. However, I thought that it would decline over the years, as more viable web frameworks have come into play (such as Ruby on Rails and Django in python). However, PHP is as strong as it ever was, despite being the most poorly designed language in the top 10. Ruby was also a surprise. Rails has gained a lot of ground among developers for it’s ease of setup, although the difficulty of doing anything more complex with it does prove to be difficult. Both of these languages have their pros and cons, but neither has gained or lost any significant ground in the past couple years. unlike our last language to look at …
Python is Thriving
Python is the new language to watch in my opinion. What was once just a general scripting language has gained quite a lot of followers, and not without reason: * Perl has been going the way of the dinosaur for some time now, and Python is a great choice to replace it * Django a web framework in python that can complete with Ruby on Rails * Python has gained a lot of popularity in the academic world as a teaching language, due to it’s easy-to-learn syntax
the biggest problem Python has at the moment is the turbulence that the switch from Python 2.x to 3 has been, with a lot of backwards compatibility issues. If Python can work through this, it has no where to go but up.
For reference, here are the top 10 TIOBE programming Languages as of February 2011
- Visual Basic
- Objective - C
* (I don’t know how reliable the TIOBE index is, but it’s all we really have for now)