The rise of two programming languages continues unabated in the latest release of the RedMonk Programming Language Rankings.
Based on language rankings from two of the biggest developer sites online, GitHub and Stack Overflow, RedMonk say the annual list is intended to be "predictive of future use" of the languages featured.
While TypeScript's momentum slowed slightly from its stellar growth in 2018, it was still one of the fastest climbers, rising four places to 12, putting it just outside the top 10.
"But features alone are never enough by themselves to propel a language this far this quickly - it must be leveraged by a wide base of growing projects - all of which explains why TypeScript's trajectory is significant and sustainable."
Today the Microsoft-created language is used to build some major applications, such as Microsoft's Visual Studio Code editor.
While TypeScript may be fast growing and relatively highly placed, it's not climbing the rankings as rapidly as Kotlin.
Kotlin is a modern alternative to Java that is easy to learn and use, which received a huge boost in 2017 when Google designated it an officially supported language for building Android apps. It has been described by a Netflix senior software engineer as offering "some of the best features of other languages" combined with "interoperability with Java", due to its ability to run on the Java Virtual Machine (JVM).
SEE: Job description: Java developer (Tech Pro Research)
Kotlin stood out in the 2019 rankings as the only JVM-targeted language to grow in popularity, with Kotlin up eight places while its JVM stablemates declined: with Scala falling one place, and Clojure and Groovy dropping three spots.
"It's still well behind Scala (#13), but Kotlin's growth has been second only to Swift in this history of these rankings so it will be interesting to see what lies ahead in the next run or two," writes O'Grady.
SEE: Getting started with Kotlin: A resource guide (free PDF) (TechRepublic)
Julia and Rust
Outside of these fast climbers, O'Grady also highlights relative newcomers Julia and Rust as languages to watch.
The Julia programming language is designed to combine the speed of C with the usability of Python, the dynamism of Ruby, the mathematical prowess of MatLab, and the statistical chops of R - with the creators going as far as to describe it as a language for developers "who want it all". In the seven years since its launch, it's found favor as a language for building machine-learning models and running supercomputer simulations.
SEE: Getting started with Julia: A list of resources (free PDF) (TechRepublic)
Julia only climbed two places to 34 in this year's rankings, but O'Grady sees some parallels with TypeScript's early usage.
"It is worth noting that three years ago in our Q1 rankings TypeScript made a similar modest jump from #33 to #31," he writes.
"That is not to say that Julia is destined to follow in TypeScript's footprints, of course, but rather to serve as a reminder that while it's uncommon languages can transition quickly from periods of slow, barely measurable growth to high, sustained growth quarter after quarter."
Meanwhile Rust, is static, holding steady at number 23 in the list.
Rust is designed to offer the fast performance of C and C++ but with safeguards to make it harder for unexpected behavior to creep into software due to memory mismanagement.
Its popularity is starting to build and today it is used to build software for the web, embedded computers, distributed services, and the command line.
O'Grady said Rust being at a standstill should be viewed in context of it being a "systems language" that "suffers from the limits of a lower popularity ceiling".
"Even if Rust never gets much beyond where it is today, it's still ranking higher than well known languages such as the aforementioned Clojure and Groovy, as well as CoffeeScript, Dart or Visual Basic," he writes.
SEE: Rust: What it is, why you should learn it, and how you can master it (free PDF) (TechRepublic)
Are Go and R stagnating?
The data science language R and systems orchestration language Go both saw a slight dip, dropping a single place in the rankings to tie at number 15.
O'Grady was uncertain about Go's future, saying that while Go is valued as a language for deploying infrastructure, it had failed to broaden its potential uses in the same way as languages like Java.
Despite this ranking, Go skills seem to coincide with well-paid roles, with the Dice 2019 Tech Salary Report naming Go as the language associated with the highest paying tech jobs.
Meanwhile O'Grady explained R's placement as being related to its focus on a relatively narrow domain and said the language continued to serve a "vibrant base of analytical and data science use cases". His assertion is backed by a Kaggle survey from last year, which found R was the most commonly used language by statisticians and data scientists in their jobs.
You can see this year's RedMonk Programming Language Rankings in full below (where languages are tied the same number appears multiple times).
- Six in-demand programming languages: getting started (free PDF) (TechRepublic)
- Programming languages: Your best options (ZDNet)
- How to become a developer: A cheat sheet (TechRepublic)
- Want to learn programming? This startup pays you cryptocurrency to study Python (ZDNet)
- 10 popular programming languages developers should learn in 2019 (TechRepublic)