According to TIOBE, this is “silly season in the programming language world.” Looking over their monthly report shows their reasoning behind this assertion: Languages previously thought to be headed to the scrap heap have bounced back, while flashy upstarts such as Swift and Kotlin risk falling by the wayside. Is there anything to learn from this anomaly?
Objective-C shot back into TIOBE's top ten, and now sits in the ninth spot ahead of SQL. Ruby also made a comeback; it’s now 11th place, up from 15th place a year ago. It’s TIOBE’s position that hipsters ruined Ruby (but things are fine now); our own data shows a language’s use doesn’t mean its job market is healthy.
Groovy also made a big leap up the charts: It’s now in 13th place, up from 44th year-over-year. There’s no discernible reason for this; it’s possible Java developers (Java is the number-one language on TIOBE’s chart, and has been for some time, mind) are simply looking for ‘something else,’ and are smitten with Groovy’s simpler syntax.
If there’s a takeaway from these data-points, it’s that old habits may die hard when it comes to a programming language. Or maybe legacy code doesn’t get rewritten in a newer programming language as soon as many would like. Swift is now in 18th position, down from 11th place this time last year. In October 2018, TIOBE noted Swift was “trying to become a permanent member of the TIOBE index top 10.” That hasn’t panned out (yet), despite the language gaining a ton of features that make it highly competitive and useful when compared to Objective-C, its predecessor.
We should also note that, in October 2017, TIOBE said Swift was losing momentum, but that had a lot more to do with tooling and frameworks being scarce than any other factor. In 2019, those issues are just no longer there.
TIOBE also says Kotlin (which has a massive upside as the new favorite language for Android developers) hasn’t been used as much as people may think. It’s now in 45th, down slightly from 43rd place. There’s no possible way Kotlin overthrows Java, but many expected that being the preferred language for Android would at least cause it to reach a higher level of use amongst developers. Sadly, that’s not the case yet, although it usually takes time for a programming language to gain significant momentum.
Operating systems will see Fall refresh cycles, and some annual contracts for tech professionals are starting to come to a close. During this time, developers and engineers are likely iterating on legacy systems and hardware, which provides less time for tinkering, refactoring, or otherwise exploring new programming-language options that may drive change in TIOBE’s monthly list. If there’s anything to be learned from the “silly season," it may be the old ethos of "go with what you know," which means older languages over upstarts such as Kotlin.