The October issue of the TIOBE Index reports that C# is getting closer to Java, and there is speculation that if the trend continues, C# could surpass Java, which until recently held the top spot in the TIOBE Index, in about two months.
One may not take the TIOBE Index too seriously, but it is interesting to follow the changes it captures, and it generally gives a picture that is consistent with other measures of language popularity, i.e. it has sufficient validity. It was created in 2002 by Paul Jansen, CEO of TIOBE Software, as a personal hobby to see what languages were in demand, and was intended as an indicator of the popularity of programming languages.
In the October issue, Paul writes that the gap between C# and Java has never been so small. Currently, the difference is only 1.2%, and if trends continue, C# will surpass Java in about 2 months. Among all programming languages (year-over-year), Java shows the biggest drop (-3.92%) and C# shows the biggest increase (+3.29%). These two languages have always been used in similar fields and thus have been competitors for more than two decades. The drop in Java’s popularity is mainly due to Oracle’s decision to introduce a paid licensing model after the release of Java 8. Microsoft has taken the opposite approach with C#. Previously, C# could only be used as part of the commercial Visual Studio tool. Nowadays, C# is free and open source and is used by many developers. There are other reasons for Java’s decline. First of all, Java’s language definitions haven’t changed much in the last few years, and Kotlin, its fully compatible direct competitor, is easier to use and free. Kotlin entered the top 20 a month ago and is now in 18th place, the highest ranking in its history, with a 0.96% rating.
However, the current situation with C# is a bit strange. Yes, it’s now an open source language, but it’s no longer as heavily supported by Microsoft as it used to be. It’s a cross-platform language, but it lacks a good robust and modern UI library. Simply put, there are too many ways to write desktop applications on Windows and not enough on Linux. The situation is better in web development, but even here the number of different approaches ASP.NET offers is confusing. And if you want to use VSCode to develop your C# program, you still have to use a Microsoft account and all of the company’s tools to get the toolkit. This is what can slow down the adoption of C#, even though it’s a great language.
Is it okay to use runBlocking?
In this video I’ll talk about when it’s fine to use the runBlocking function from Kotlin coroutines and when you...
Mobile App Development Best Practices – 07.12
KSP2 Preview, Mastering in SwiftUI, How to implement gamification and more!
Gemini is the new foundation for artificial intelligence in Android
Foundation models are trained on a variety of data sources to create artificial intelligence systems that can adapt to a...
Google has released AlphaCode 2 based on Gemini
Google today, along with its Gemini artificial intelligence model, unveiled AlphaCode 2, an improved version of the AlphaCode code generator...
ColorfulX – Metal for crafting multi-colored gradients
ColorfulX is an implementation using Metal for crafting multi-colored gradients. ColorfulX Platform UIKit and AppKit platforms are generally supported. Due to MTKView not...
Mobile App Development Best Practices – 06.12
Power of enums, A New Foundation for AI on Android, developer dogmas and more!