Kotlin is the second most-beloved programming language among developers, according to a Stack Overflow survey, behind only Rust and followed by Python. This raises the question of why JetBrains' language, created in 2011, has so quickly won developers' hearts over more established options.
To find out, software provider Pusher surveyed 2,744 Kotlin developers in a State of Kotlin 2018 report, which came out earlier this month.
Kotlin's growth doubled each year from 2011 to 2015, when it saw its first massive spike in usage, the report found. That year, Square adopted the language, and many others followed suit. Then, in May 2017, Google named Kotlin an official language of Android with full support, and a large number of Android users began adopting it. Android apps built with Kotlin include Slack and Netflix, our sister site ZDNet noted.
SEE: IT Hiring Kit: Programmer (Tech Pro Research)
In its early days, Kotlin was being picked up primarily by experienced professional developers. However, after the Google announcement, its usage among students and newer developers skyrocketed, the Pusher report found. While total adoption of the language was around 40% in 2017, adoption among students that year hit nearly 63%, according to the report. And more than half of the Kotlin developers surveyed reported that they'd been working as developers for less than five years.
Likely due to the Google influence, Kotlin rose from the 65th most popular programming language in 2017 to the 27th most popular in 2018, making it the second-fastest growing language after Swift, according to a RedMonk report.
Of the Kotlin developers surveyed who are actively working, more than 60% said they currently use the language in their work projects, the report found. About 55% said they use Kotlin exclusively when it comes to side projects.
The majority of Kotlin developers (80%) are using the language to build Android apps, according to the report. Some 31% said they use it for backend/serverside applications, while another 31% said they used it for SDK/libraries.
In terms of features, 81% of developers said null safety was their favorite, followed by extension functions (64%) and Java interoperability (61%), the report found.
Developers often migrate existing Java code to Kotlin: More than 87% of respondents have done these migrations, using techniques like a wizard or rewriting code manually, according to the report. However, more than a quarter of respondents who migrated Java to Kotlin had to revert, for technical and organizational reasons.
When it comes to cross-platform support, only about a quarter of respondents said they do this, with most of those opting for Kotlin/Native, followed by KotlinJS. But it's likely that adoption of these features will pick up over time, the report noted.
"The key takeaways from the report are that Kotlin is going strong, and will continue to grow," Zan Markan, developer evangelist at Pusher, wrote in a blog post about the results. "Our team at Pusher predicts that over time, more and more of that growth will come from new developers for whom Kotlin will be their first foray into programming, and it just might happen that they will judge every other language against Kotlin. Its features and flexibility allow for great productivity and that could greatly influence the development of other programming languages as well."
However, the question remains whether or not Kotlin will manage to seriously break into communities outside of Android, the report noted.
The big takeaways for tech leaders:
- 80% of Kotlin developers are using the language to build Android apps. -- Pusher, 2018
- Kotlin developers rank null safety (81%), extension functions (64%), and Java interoperability (61%) as their favorite features of the language. -- Pusher, 2018
- How to build a successful developer career (free PDF) (TechRepublic)
- Which programming languages are most popular (and what does that even mean)? (ZDNet)
- How to become a developer: A cheat sheet (TechRepublic)
- Programming languages: Python is hottest, but Go and Swift are rising (ZDNet)
- Java at a crossroads: Why the popular programming language needs to evolve to stay alive (TechRepublic)