The July 2021 edition of the TIOBE Programming Community Index is out, and things are a bit crowded at the top.
The Index was first published in July 2001, after TIOBE CEO Paul Jansen embarked on “a personal hobby project to see what languages were in demand”. The methodology to determine a language’s popularity — and therefore place on the index — has stayed pretty much the same since then: ratings are calculated by counting and normalising the hits for the query +"<language> programming" in a list of popular search engines.
A change in Google’s methods in 2004 led TIOBE to add more search engines to the mix to minimise fluctuations. However, most of the qualified engines currently used belong to the Google family, so a change there would still influence the overall outcome. Criticism of the Index often boils down to it not being very meaningful, since singular events like a new release or temporary problems can potentially change the outcome of the ranking significantly.
TIOBE, the company, was founded in Eindhoven, and is mostly known for its TICS product, a framework for measuring software code quality. Its name stands for “The Importance Of Being Earnest”, which is meant to reflect the company’s “sincere and professional attitude” (and provide Oscar Wilde connoisseurs with a bit of a chuckle, we suppose).
20 years ago, the top ranks of the TIOBE Index were populated by Java, C, and C++. This isn’t too different from the way things are today, except that Python has taken over C++’s position and the three top contenders are apparently closer than ever before.
Between C, which occupies the highest spot for the 15th straight month, and third-placed Python, there’s a difference of just 0.67 per cent this time. A year ago the gap was about 7.36 per cent between the two, so 2020’s language of the year seems to be on a clear trajectory towards the top. The latest edition of the PYPL Index already sees Python settled there, ascribing it the most growth in popularity in the last five years. Meanwhile Java, the second on the TIOBE Index, appears to be continuing to lose ground.
Jansen explains Python’s continuous rise with the “booming field of data mining and artificial intelligence”. This can’t be the whole story however, given that languages like R, Matlab, and Julia — which are also common in that area — are currently falling back down the list slightly or are stagnant at best. Having a somewhat established ecosystem of tools including heavyweights like NumPy, TensorFlow and PyTorch, as well as comparatively solid IDE support, surely helped Python climb up the ranks.
With few exceptions, the top 10 stayed pretty much the same since last year’s rankings. R dropped from #8 to #12, and Swift plunged from #10 to #16, making room for stalwarts PHP and SQL to shift a little.
Further down, the top 30 shows at least a bit of interesting movement, with Go climbing back up from #20 to its February position of #13.
Rust also got some tailwind and jumped from #30 to #27. Among other things, this might be down to growing interest in the Rust for Linux project, which is meant to bring memory safety to the Linux kernel and has started to receive financial support just recently.