29 July 2020

Programming language popularity: Python overtakes Java – as Rust reaches top 20

Programming language Python is now firmly the second most popular programming language, for the first time knocking Java out of the top two places in RedMonk's language popularity rankings.


It's the first time since 2012 that Java is not one of the top two most popular languages in the developer analyst firm's programming language popularity list.


The company's previous rankings in March placed machine-learning propelled Python in a tie for second place with Java, behind JavaScript.


Electrical engineering publication IEEE Spectrum's latest popularity rankings, released last week, places Python at the top, followed by Java, C, C++ and JavaScript, while Tiobe's July rankings are led by C, Java, Python, C++ and C#.


RedMonk's influential programming popularity rankings are based on GitHub and Stack Overflow data. The company combines them "for a ranking that attempts to reflect both code (GitHub) and discussion (Stack Overflow) traction", says RedMonk analyst Stephen O'Grady, who notes "all numerical rankings should be taken with a grain of salt".


While RedMonk's June 2020 rankings don't show much change compared with the March list, O'Grady considers Python the big winner in this edition simply because it hasn't moved from second place while Java has fallen a spot.


"Python is the first non-Java or JavaScript language ever to place in the top two of these rankings by itself, and would not have been the obvious choice for that distinction in years past," O'Grady notes, comparing it to Perl in its heyday because it has become a "language of first resort" and the "glue" for thousands of small projects, while enjoying high adoption in growing categories such as data science.


Even though Java has dropped out of the top two for the first time in nearly a decade, O'Grady thinks it's wrong to write off the language. But he reckons Java's prominence is under threat as developers pay more attention to other languages.


Five-year-old systems-programming language Rust, created by Mozilla, has hit a more positive milestone, for the first time becoming the 20th most popular language in RedMonk's rankings. Rust joined Tiobe's top 20 this June and is currently in 18th spot.


Apple, Amazon, Dropbox, Facebook, Google, and Microsoft are using Rust in various ways to build platforms rather than applications. Microsoft in particular sees value in the language for its memory-safety features.


Rust and the Google-endorsed language for writing Android apps, Kotlin, have seen similarly impressive growth in the past five years. In that time, Rust has climbed from 48th spot while Kotlin, now in 19th position, was the 68th most popular language half a decade ago. However, Kotlin's position hasn't changed since the last rankings.


Tiobe in July put forward a theory that statistical programming language R rose in popularity as a result of the universities and the healthcare industry racing to find a vaccine for COVID-19. Previously, Tiobe suggested R may be being squeezed out by Python in the field of data science. RedMonk's current ranking for R remains unchanged with 13th place.


Microsoft-backed TypeScript, a superset of JavaScript for big projects, also retained its spot as the 9th most popular programming language in RedMonk's rankings. The question now is whether it will drop out of the top 10, as Apple-backed Swift did – it's now in 11th spot – or rise to join the top five programming languages.


As O'Grady notes, TypeScript's type safety features and Microsoft's code editor Visual Studio Code (VS Code) are probably helping its performance.


"Prior languages such as Swift have shown that achieving a high ranking is certainly possible, but that sustaining it is an entirely separate and often more difficult challenge. TypeScript, however, has managed this trick with a minimum of effort, its particular mix of JavaScript-based ubiquity, optional type safety and usage in popular projects like VS Code proving to be a powerfully sustaining mix of attributes," he writes.


"The question for TypeScript, as it was during the last run, is what the language's potential ceiling is. Will it top out in the back half of the Top 10, or can it make a push for the Top 5? We'll be watching to see where this up-and-coming language heads."


RedMonk's June 2020 top 20 most popular programming languages are:


1 JavaScript
2 Python
3 Java
5 C++
6 C#
7 Ruby
9 TypeScript
10 C
11 Swift
12 Objective-C
13 R
14 Scala
15 Go
16 Shell
17 PowerShell
18 Perl
19 Kotlin
20 Rust

This RedMonk graphic tracks the movement of the top 20 languages over the history of the rankings.


Image: RedMonk



Source: ZD Net