Kotlin gnaws at Java’s throne
The rise of Kotlin has been meteoric, and a new report sheds some light on Android developers’ preferences. In this article, we take a look at the recent history of Kotlin and trace its growth over the last couple of years, look at the state of Kotlin today, and then look briefly to the future. Will Kotlin eat more of Java’s share or will Java remain king of the hill?
A new report from Dice Insights shows the results of an Android development poll asking which language was preferred: Java or Kotlin. But before we look at that, let’s take a look over the rise of Kotlin so far.
Java – king of the hill
In a world where the most popular programming languages are predominantly from the old guard, it takes something remarkable for the balance of power to be disturbed. This is especially true when it comes to Android development.
Since the launch of the HTC Dream in 2008, Java has dominated the Android development scene. Sure, C/C++ might be added into the mix, and Go is supported by a limited set of APIs, but Java is the king of the hill. Or is it?
In May 2017, Google announced that Kotlin was a first-class language for Android. This meant support for problems such as runtime exceptions and source code verbosity, as well as Android Studio coming with Kotlin out of the box from then on. This was a pretty big deal, but Kotlin was still just a small fish in a Java-dominated ocean.
Kotlin’s ascent up RedMonk’s programming language rankings
Just briefly, let’s look at how the RedMonk rankings are put together. In their own words, RedMonk states that it is intended as “a ranking that attempts to reflect both code (GitHub) and discussion (Stack Overflow) traction” in order to “correlate language discussion (Stack Overflow) and usage (GitHub)”. So keeping that in mind, consider the following:
In the January 2017 ranking, Kotlin sat quietly at #50, having jumped 15 places from postition #65. In June 2017 Kotlin turned up at #46 with a special mention noting that the ranking was particularly interesting. Kotlin ranked higher as a language on GitHub – #39 in terms of popularity, but was weighed down by the fact that its mentions on Stack Overflow placed it much lower – #60. They speculated this might have been due to people taking a quiet look at it without saying anything. They noted it would be one to watch for their January 2018 rankings because they expected the quiet investigation to translate into something more tangible.
Come January 2018 RedMonk placed Kotlin in position #27, declaring it to be one of the fastest growing programming languages in the world and noting that its popularity on GitHub still far outstripped its mentions on Stack Overflow. In June 2018 it dropped by one place, but it wasn’t done yet.
As if in response to its slight drop in the later June 2018 rankings, the January 2019 rankings showed Kotlin in 20th place. In the space of just over two years it jumped 45 places up the rankings. June 2019’s rankings showed it to be holding steady at #20, but who knows what the future will bring?
The state of Kotlin
In July last year, API provider Pusher published a report called The State of Kotlin in which they surveyed Kotlin users. 79.5% of the 2,744 participants said they were working on Android projects, and the report also notes the popularity of the language among younger developers. Kotlin’s adoption among students was at 62.5%, and they found that the highest concentration of Kotlin adopters among developers was those with 2-5 years of experience, which was just over a third of the surveyed users.
The report also showed that job adverts asking for knowledge of Kotlin had skyrocketed since Google’s 2017 announcement. Kotlin is clearly in demand.
Kotlin vs. Java
It’s clear, then, that Kotlin’s popularity has exploded since 2017, but is it really a serious contender? Dice Insights have released a report based on a Facebook poll they conducted. While such a poll is hardly de rigueur, scientifically speaking, one might argue that Facebook is more of a neutral ground than polling purely Kotlin users like Pusher did. Think of this poll, then, as a quick development pulse check.
The question asked was: “Which language do Android developers prefer?” And the answer, unsurprisingly, was “Java!” However, Java only accounts for 85% of the results. There’s also a 15% slice of the pie chart that shows Kotlin is the preferred language. That’s not a huge proportion, but it’s not tiny either. And when you consider that Kotlin has achieved this (albeit tenuous) 15% of the ‘market share’ for Android development in a little over 2 years, it might even be considered worth watching. That’s it’s achieved this by fighting against Java might even be considered impressive.
Whatever your personal feelings on this might be, one thing is clear: Kotlin isn’t done yet, and it looks set to keep growing and eating away at Java’s dominance. So Java is still king of the hill for now, but this young challenger Kotlin might still have an ace or two up its sleeve.