There are multiple ways to measure the popularity of programming languages. The most well-known rankings are the TIOBE Programming Community Index, the PYPL PopularitY of Programming Language Index, and the RedMonk Programming Language Rankings. Other tools such as StackOverflow, Trendy, Indeed, or IEEE Spectrum allow you to compare programming languages.
TIOBE Programming Community Index
TIOBE (The Importance Of Being Earnest) analyzes queries from the 25 most popular search engines. To put it simply, it counts the hits of search queries containing “<language> programming”. The index is updated once a month and is the most well-known index.
In January 2017, it places Java, C, C++, C# and Python at the top, same as last year. However, if we combine the ratings of the top 5 languages together, they add up to more than 50 points in January 2016. Their sum total drops to around 40 points in 2017, yielding place to emerging languages like Go, which gained more than 2 points, Dart or Rust.
Source: TIOBE Index for January 2017
PYPL PopularitY of Programming Language Index
PYPL index is based on Google trends. It analyzes how often language tutorials are searched. Unlike TIOBE index, which uses the keyword “programming”, PYPL uses the keyword “tutorial”.
RedMonk Programming Language Ranking
This ranking focuses on comparing language discussion through StackOverflow (SO) and usage through GitHub. For SO, it counts the number of tags, and for GitHub, the number of projects. The ranking is updated twice a year.
Undoubtedly, RedMonk will publish a new ranking next month with the data from January. It will be very interesting to see if they get the same evolutions as the other indexes.
RedMonk provides the above chart. However, you can find the same kind of data updated in real time in this fantastic chart.
The survey also provides a lot of other statistics such as the most popular technologies per developer type and the top and trending technologies on SO. It’s a gold mine.
Source: Developer Survey Results 2016
IEEE Spectrum Ranking
IEEE enables us to choose the weights of the different criteria to establish a ranking and compare it to another ranking. Their ranking uses data from 12 different sources such as Google, SO, GitHub, Reddit, Hacker News and even Twitter.
IEEE Spectrum ranking places C, Java, Python, C++ and R in the top 5.
It’s even possible to compare this ranking with a custom one with different weights.
By analyzing the job postings on sites like Indeed or Dice, you can discover what skills tech employers are looking for. Indeed also offers an interactive chart to find trends. Here’s an example with some of the most popular languages:
The site also has a public API.
Such rankings usually put forward “classic” programming languages. Let’s not forget all the small communities surrounding new languages. Some are growing really quickly. We might hear from them sooner than we think.
CodinGame platform currently supports 25 programming languages. Want to try Go, Rust or Swift?