Time for scrutinizing last year’s trends in language popularity, as far as they can be discerned from Internet analytics. Andrew Binstock’s The Rise and Fall of Languages in 2012 compiles several surveys while Mike James’ The Top Languages of 2012 focuses on the TIOBE index. Nothing much has changed, which is somewhat surprising in itself.
-
There’s no major breakthrough for functional languages, despite their suitability for concurrent programming. Apparently either the need for the latter isn’t great enough among a majority of programmers, or else the functional constructs seeping into traditional imperative languages are good enough for them – probably both.
-
Java and C continue to prosper, holding the top spots “in all major language surveys” and by a wide margin in the TIOBE index, even though everyone keeps complaining about Java and nobody seems to champion C. As Binstock notes, Android has no doubt given another push to Java – but who are all the people using raw C? Surely there can’t be that many embedded developers?
-
Behind these two top dogs, Objective-C continues do very well, racing ahead of C++ in the TIOBE index. Despite slowing sales of iOS devices, Apple’s eternally predicted demise has yet to happen.
-
JavaScript, the language everyone’s supposed to be using in HTML 5 apps, is “treading water” – and at a fairly low level according to TIOBE. So it seems the long-announced HTML 5 revolution is still waiting to happen, too.
-
C++ is likewise holding steady, with no sign of a big C++ 11 “renaissance.” The C++ ecosystem is generally slow to adopt changes, but I also wonder if C++ 11 wasn’t oversold. Those slick new features sounded great when I first heard about them, but backward compatibility forced them to coexist with all the clunky old features. The burden to manage this awkward and dangerous coexistence once again falls on the programmer, further complicating an already over-complex language.
There’s one big “told you so” in the TIOBE index: C# dropped from 8.8% to 6.2% year over year – the biggest decline among all languages, and a reversal of its long-term upward trend that should have seen C# pass 10% and match Objective-C by now. The future will show if this is just a random fluke, but it’s tempting to perceive it as the first result of Microsoft’s contemptuous treatment of its .NET developers.
2013-02-07: John Sonmez has written an excellent article, Why C++ Is Not “Back”, that echoes my own feelings about C++ 11: it’s great for C++ hardcore hackers who relish even more complexity, but it won’t broaden the appeal of the C++ language.
2 thoughts on “Programming Languages in 2012”