Developers who want to try out new programming languages or projects flock to GitHub, the Microsoft-owned service for sharing code and gathering communities around open source software.
Every year, GitHub publishes a report, called The State of the Octoverse, which tracks the most popular languages and projects on the site. Given GitHub’s prominence in Silicon Valley and anywhere else code is written, the report is a solid proxy for the larger trends in the industry.
While established languages like JavaScript and Java generally dominate the most-popular lists, GitHub also tracks the up-and-coming rising stars – the languages and frameworks that are growing the fastest in usage.
Stephen O’Grady, principal analyst and co-founder of RedMonk, says that he noticed there were three characteristics in these fastest-growing languages.
First, these languages are versatile. For example, Python can be used for machine learning, data science, and other kinds of data-intensive technical tasks. Second of all, some of these new languages, such as Rust and TypeScript, have special features that promote cybersecurity.
"What we hear when we talk to developers, they meant to use tools that will make their applications more secure by design without investing a ton of effort in them," O'Grady said on-stage at GitHub Universe, the company's annual event in San Francisco, held last week.
The third is that many of these languages are actually based on, or at least compatible with, those that already exist - which helps them attract a community, drawn from those progenitors. For example, TypeScript has proven popular with JavaScript developers, while Kotlin has been a hit with the Java community.
Here are the fastest-growing programming languages around, according to GitHub:
#10: Go
Go, also known as Golang, is a programming language created at Google by Robert Griesemer, Rob Pike, and Ken Thompson. In 2009, Google released Go as an open source language, meaning it's free for anyone to use, download, or modify. Go was designed to be especially fast and easy to work with, especially for larger-scale systems (like Google's own).
#9: Assembly
Assembly is a programming language that "speaks" as directly as possible to computers in their primary language: 0's and 1's. Developers use Assembly to write instructions for computers to access and process data at the lowest possible level. It can be tedious because each line of code must include even the simplest of instructions, but it can offers developers an unbeatable level of fine-tuning in their code.
#8: Python
Python is both one of the fastest growing programming languages and the second-most popular one overall. It's open source, so anybody can download and get started with it, and it's high-level enough that it's easy for beginners to pick up. It's frequently used for tasks around web development, data science, and artificial intelligence.
"We often find that while Python isn't people's primary language, it was a lot of people's second language," Rachel Potvin, GitHub's vice president of engineering and data, said onstage at GitHub Universe on Wednesday. "There's something else behind the uptake in Python which is this explosion of the work in data science and machine learning."
#7: Apex
Apex was first developed by Salesforce as a language for customizing and building its software, making it easier for developers to write code that automates tasks like updating customer records or running custom reports. It's designed to work well with large amounts of data, and shares some similarities with Java, one of the most popular programming languages.
#6: PowerShell
PowerShell was developed by Microsoft, and built on its popular and prominent .NET. This open source language helps developers write instructions directly to their computer systems and manage their operating systems - especially useful for IT departments that need to automate tasks like onboarding new users or installing software updates across an entire network. It's now available on Linux, Apple's MacOS, and Microsoft's own Windows.
#5: TypeScript
TypeScript is both one of the fastest-growing programming languages and one of the most popular. Developed by Microsoft, it's similar to JavaScript, and developers can mix and match both languages. However, compared to JavaScript, it has additional features that help developers create larger-scale software. It's also supported out of the box by Microsoft's free code editor Visual Studio Code, which is the top open source project on GitHub.
#4: Kotlin
Kotlin, an open source language, is similar to the popular programming language Java (and programmers can mix and match between the two languages), but it has special features that help guard against bugs. It's also much more concise, helping developers do more with fewer lines of code. It's frequently used for building Android apps. Last year, Kotlin was the fastest growing programming language, and it's used by companies like Google, Square, and Atlassian. It's still growing fast, as it grew by 182% in the past year.
#3: HCL
HCL, which stands for HashiCorp Configuration Language, was developed by developer startup HashiCorp, which creates tools that help programmers run and secure software running in the cloud. It's used to help set up HashiCorp's cloud tools, like Terraform, and it's designed to be easy for people to read. It grew 213% in the past year.
#2: Rust
Rust was designed to be fast and more efficient with memory, with features that prevent developers from making common errors and introducing bugs. This open source programming language, which is sponsored by Mozilla of Firefox fame, is used in game engines, operating systems, virtual reality, and other systems-intensive tasks. Rust grew 235% in the past year.
#1: Dart
Dart, which was developed by Google, was made specifically for designing user interfaces (UI), or how an app looks and feels to users. It's similar to JavaScript, the most popular programming language. It's also used with Google's Flutter, a UI toolkit for building mobile and web apps. Dart grew 532% in the past year.