Last week TIOBE released its monthly ranking of computer programming languages for September 2014 under a headline which might keep some developers up at night, "Java and C++ at all time low." Their TIOBE scores, which measure that language’s share of web searches for programming languages across a number of search engines, were indeed at all time lows. Java’s share of search results was 14% this month, which continues a steady decline since its high of 26.5% in June, 2001. Similarly, C++’s share of web searches was 4.7% this month, down from its all time high of 17.5% in August, 2003.
As the TIOBE team wrote, this is not to say that either Java or C++ have lost its dominant position in the programming world. Both are still highly ranked on the index (numbers 2 and 4, respectively, this month) as they have been for years. Rather, TIOBE theorizes that this loss of search market share reflects the growing fragmentation of the programming language universe. Part of that, they suggest, is due to the growth of other, often more niche languages for specific industries, such as R, which have eroded some of the demand for the more all purpose languages.
Since TIOBE's results are just one way to measure language popularity, I thought I would take a closer look at how Java and C++ have really been fairing using some of the other measures available.
The Popularity of Programming Language (PYPL) Index also ranks programming languages monthly based on web searches, but, more specifically, it looks at Google searches for tutorials about a language, rather than just any search for a language name. Java is still the number one language there, as it has been since 2004, with a 27% share, up slightly from 2013. C++ is #5 on the PYPL list, same as it was last year, though with a smaller share, 8.8%. Over time, C++ is losing ground in this measure; in 2004 it was #3 behind Java and PHP, but has been surpassed by Python and C#. It seems that C++ is losing some ground to C#.
Together, all of these findings, more or less, back up what the TIOBE team suggested:
Java remains one of the most dominant languages in use and there’s no evidence that its in decline relative to other languages.
C++ also remains solidly in the top tier of languages, though there is some evidence that other languages, such as C#, have made gains at its expense.
While the top programming languages remain fairly static, the overall universe continues to fragment, with the dominant languages, as a group, losing share to smaller, sometimes more niche languages, such as R and Go.
Anyway, all of this implies that you should sleep well tonight, Java and C++ developers.
Read more of Phil Johnson's #Tech blog and follow the latest IT news at ITworld. Follow Phil on Twitter at @itwphiljohnson. For the latest IT news, analysis and how-tos, follow ITworld on Twitter and Facebook.