We do enjoy a good horse race. Thanks to listings like PYPL and TIOBE, we can take a monthly look at how various programming languages are doing on a monthly basis. But for a broader view, RedMonk’s biannual report can’t be missed.
The June edition might be a little late, but that’s okay. It’s been a hot summer, everyone moves slowly in this kind of heat. (If you missed our earlier coverage of the January snapshot, look no further.)
Every year, Red Monk takes a look at a snapshot of the internet in January and June. Instead of looking at the hard numbers, RedMonk combines rankings from GitHub and Stack Overflow. By querying languages on GitHub based on pull requests and excluding forked repos, it shows which languages are active. The Stack Overflow data is collected with the data explorer tool.
This approach encompasses both usage and discussion, giving their ranking a more nuanced look at their popularity. However, it does over emphasize larger languages, with a clearer magnification on big names like Java or Python. Smaller languages have less data available, so their places on the rankings are less reliable. (That said, everything in the top 20 is pretty certain.)
Top 20 languages
There’s a few ties here and there on this list, which are listed alphabetically. Other than that, there are no big changes from earlier in the year.
Here’s this year’s ranking in list form.
As usual, the biggest surprise is that there are no real surprises.
The steady permanence of the top tier shows that there are few changes on a daily or even monthly basis. It’s practically identical to the first report in 2018! Top projects have a lot going for them, making it difficult for a new project to kill Java, finally. Displacing an already established language is a significant uphill battle.
It’s only when we look at everything below #10, that’s when things get interesting.
Kotlin dropped on spot to 28 on the list, calling its Swift-like ascendance into question. Thanks to a clean design and a recent promotion to a first-class language on Android, developers have predicted that Kotlin would crack the top 20 list soon. Sadly, it’ll be at least another quarter or two, at minimum.
After three quarters of falling rankings, Scala has bounced up to 12 on the list. Perhaps the news about Scala 2.13 and Dotty helped boost this language’s prospects. Clojure jumped 4 slots to share number 21 with Groovy. We might actually see either one crack the top 20 list soon.
Julia has improved considerably, moving up three slots to number 36. This marks the fourth consecutive quarter of growth. With the recent release of Julia v. 1, it’s likely this language is on the up. Only time will tell if its rise will similar to Kotlin or Perl.
TypeScript’s rapid rise suffered something of a retrenchment this quarter, dropping to one spot below Go and R. This isn’t that unusual – languages often swap spots. But, Go’s improvement is notable and something to keep an eye on in the future. R dropped a few spots, but this is a regular occurrence. Its utility for data science means that R is likely to hang around in the top 20 for a very long time.
As always, it’s important to take these rankings with a grain of salt. For one thing, there’s always a little shuffling between languages as they nudge past each other. It’s only when we take the long view when we can really see the state of any given language.
Additionally, rankings mean nothing if the language isn’t useful to you in your daily life. Choose languages based on their utility in the developing work you need to do, not because they are trendy!
We’ll keep a weather eye on these rankings, but it looks like calm seas and a steady wind for most of these programming languages.