Today a friend sent me a link to what I think is an absolutely fascinating survey of the most popular programming languages (circa May 2010). From where I sit this looks to be spot on.
As my friend said you could stare at this all day. Some of the things that jump out at me:
- C, Java, and C++ are the tier I languages. If you can code in one of these languages you will never be out of work for long.
- If you club together Visual Basic with C# and call them “.Net” then you can say that the tier IA languages for web development are PHP and .Net with Perl and Python falling behind as the tier II web languages.
- As pointed out in the original post Objective-C cracked the top 10 programming languages almost certainly on the back of the popularity of the iPhone/iPad. Clicking on the Objective-C link shows a big spike in middle of 2009. Classic tipping point.
- Although still the #5 most popular language the trend graph suggests that Visual Basic is dying. It’s fallen off significantly over the past 12 months. This is entirely consistent with my experience as a .Net developer. Although the syntax is very similar I don’t know anyone that does VB.Net commercially. It’s all C#.
- In my experience the LAMP stack (with the “P” largely being PHP) is the platform of choice for start-ups for the obvious cost reasons associated with licensing Windows. The Microsoft stack is typically found in enterprises that have already licensed windows. The interesting middle ground is Mono – .Net running on a non-Windows platform such as Linux.
- Given the number of high-profile sites (Twitter, Basecamp, etc.) that run on Ruby on Rails I was somewhat surprised to see Ruby’s relatively low score. Part of the issue may be that the how different Ruby syntax is from other languages. For example, an experienced C# programmer can relatively quickly become productive in Java. I think over time Rails apps will become more and more prevalent likely at the expense of PHP. I don’t know much about it but I’ve heard good thing about Groovy on Grails (Rails in a Java-like language).
- What I don’t at all see on the list are any of the Salesforce.com specific languages like Apex Code or Visualforce.