Java on Android is dying, and before long will be dominated by Kotlin, or so says a selective slice of developer data.
Realm, which offers a real-time database popular among mobile application makers, has crunched the numbers from its pool or 100,000 or so active developers.
The company on Tuesday published its findings, a habit it intends to repeat on a quarterly basis.
The figures aren’t particularly relevant for the general pool of Java developers, which Oracle recently put at 12 million. But they suggest the Android ecosystem is undergoing rapid change.
Introduced in 2011 by JetBrains, known for its Integrated Development Environment (IDE) software, Kotlin only reached 1.0 last year. This year, it was endorsed by Google as a first-class language for Android development.
JetBrains says Kotlin is more concise than Java, requiring about 40 per cent fewer lines of code. It also says Kotlin is also more type-safe and supports functional programming constructs.
Among Android developers using either Java or Kotlin – and not other languages via Android NDK – 94.9 per cent used Java in September 2016 and 5.1 per cent used Kotlin.
A year later, the ratio has shifted to 85.7 per cent Java and 14.3 per cent Kotlin, a fairly sizable change.
“Since Google blessed Kotlin as an acceptable language on Android, which happened in May at Google I/O, Kotlin use has just exploded, ” said Paul Kopacki, veep of marketing at Realm, in a phone interview with The Register. “We think by the end of next year, Kotlin will have eclipsed Java for Android apps.”
According to Realm, 20 per cent of Android apps built with Java prior to Google I/O are being rewritten in Kotlin.
Kopacki said developers using Realm’s database have shown significant interest in converting Java code to Kotlin.
Realm’s report says Kotlin’s traction is particularly strong in Germany, Japan and India, in that order, with the US in fourth place.
The Register checked in with Stack Overflow for data on Kotlin and was told that while there is indeed growing interest, it’s still small compared to other languages. ®