Which programming languages have enjoyed massive use over the past several years? Which are on the decline? The answers to those questions can help developers determine which languages to study next, and which to potentially abandon in favor of something else. Fortunately, analyst firm RedMonk has spent years ranking programming languages. Here’s their latest update:
RedMonk relies on two sources in order to build its charts. “We extract language rankings from GitHub and Stack Overflow, and combine them for a ranking that attempts to reflect both code (GitHub) and discussion (Stack Overflow) traction,” the firm states. “The idea is not to offer a statistically valid representation of current usage, but rather to correlate language discussion and usage in an effort to extract insights into potential future adoption trends.”
Based on that methodology, JavaScript, Python, and Java have seen virtually no decline in usage or “buzz” over the past several years—in fact, Python has seen its RedMonk ranking rise since 2012, no doubt in large part to its increasing use in highly specialized segments such as artificial intelligence. PHP, C#, and a handful of other languages have likewise remained remarkably stable.
However, smaller languages often undergo dramatic swings on RedMonk’s rankings. Take TypeScript, which has skyrocketed from 17th to 8th place over the past five years, or Swift, which has jumped from 18th to 11th place. TypeScript is a superset of JavaScript, meaning whatever you code in it is transpiled to JavaScript; while there’s some argument over whether TypeScript is technically a “full” programming language, it’s undebatable that many developers find its features useful when working with any kind of JavaScript codebase. Swift is Apple’s much newer replacement for Objective-C, the Apple ecosystem’s programming language for decades, and benefits from Apple constantly pushing it on developers.
Other newish languages, such as Kotlin and Rust, have also risen in the rankings, although not as dramatically. For developers who hate working with older, well-established languages such as Java and JavaScript, many of these newer languages can act as an effective substitute. But will there come a day when Kotlin, TypeScript, and their ilk eventually eclipse their predecessors in terms of usage? Given the sheer amount of legacy code out there, that day—if it ever arrives—is a very long way off.