We are one fourth of our way through 2015 already, and I have not posted even once this year. So to restart on an interesting note, I’ll just put forward some of my overnight findings about the state of Java as a programming language and the community around it.
Java is slowly creeping past its adolescence, about to reach the 20 year mark. This short  journey is quite conspicuously bifurcated by the sale of Sun Microsystems to Oracle in 2010. Prior to the high profile and controversial sale, Java was considered to be in the dormancy that precedes the death of a language from mainstream use. Java was pitched to be the new C. Or Pascal. Or for that matter, COBOL. But it never did. Why? Because of two very important things which helped turn the tables in its favour.
One, I already mentioned. Sun’s acquisition by Oracle was a major landmark for the Java community. Not only did it change the ownership and the maintainer-ship of the Java codebase, it also brought about a flurry of changes in the developer scenery; mostly out of fear of commercialization of Sun’s open source initiative by Oracle.
Thus came into existence LibreOffice, Jenkins, and MariaDB, from OpenOffice, Hudson and MySQL respectively. There was suddenly a flurry of activity around big name Java projects. This was also followed by the release of Java SE 7, almost half a decade after the release of Java SE 6. Oracle wanted to push the development as fast as it could, not without its own commercial interests in mind. Hence the long dormant Java features suddenly started seeing the light of the day. This was most recently proved by the release of Java SE 8, probably the most important release of the Java API since JDK 5, with new language constructs for lambdas and Streams, among other major additions.
The second thing which brought Java away from its slow creep towards language obsolescence was, unsurprisingly, Android. Google had a history of leveraging the Java API to the best of its ability for internal use, resulting in libraries as GWT and Guice. However, Google had been secretly working on a massive redesign of the Java VM for mobile platforms which would revolutionize the smartphone industry. Android was born. Java, with a huge sigh of relief, was reborn.
Everybody wanted to write apps for Android, hence, everybody wanted to write Java. There was a surge in demand for Java developers. As more and more people had an Android powered smartphone in their hands, developers had reach to more and more pockets. By the end of 2014, there are over a billion devices running some version of Android, more than 3/4th of the total market share. That is over a billion devices running Java. Even by the multibillion standards set by market leaders in their field like Facebook and Microsoft, these are huge numbers for a language which was close to getting irrelevant just half a decade ago.
In a way, Oracle profited a lot from the timing of its purchase of Sun. And its not just about its lawsuit and the proceeding statuary damages that it won. Oracle won a lot of users. A whole new market of developers willing to invest their time and skill in the Java ecosystem. And that was a huge achievement, since it is the developer community that decides the direction a language takes.
Are People Interested in Java?
As of now, the statistics are mindblowingly in favour of Java, especially compared to other languages which it competes with. For example, here is a snapshot of what the Google Trends look like for some of the most popular languages for the past year. The blue line marks Java. The red line is Python, which is supposed to be the most beginner friendly language out there. Java beats it by a score of 78 – 7.
Are Developers Interested In Java?
There does not seem to be any competition as far as the public interest in the language is concerned. But does this data reflect the developer interest in the language? Not really. For that, we turn to the Tiobe Index. This is a reflection of a number of factors representing the overall interest in the developer community in the field of languages. Java has consistently finished in the top 3 for the past 15 years. That is no mean feat. The overall trends show how interest in Java has plateaued at a respectable level since Oracle took over Sun and Android became mainstream. Below is an overall chart. The full statistics can be found here.
How Active Is The Java Community?
Okay, so we have sufficiently established that newbies and seasoned developers alike are interested in Java and its surrounding technologies. But what about the community around the language? Is it active and thriving? Is it supportive and helpful? Well, what better place to look for community support statistics than our very own savior StackOverflow?
Here is a look at its tags sorted by popularity. The numbers alongside each tag represent how many questions have been asked related to the tag by the community on the site. Java has twice as many questions asked on StackOverflow as Python, perhaps its closest competitor in the open source programming language landscape.
But what about the past year? Well, we have data for that too, thanks to a simple SQL query which let me list the most popular tags for the year 2014. You can find the query here.
How Much Code Is Actually Being Written?
But what does it tell us? One small, but important thing. Java is alive. Code is being written in Java incessantly. And that is what keeps a language alive. Developers actually using it, not just talking or searching about it. It’s more about the end product than the buzz that surrounds something. Java is not fancy, its not very hackable but it is very beginner friendly, no-nonsense and powerful. The features which will keep Java going on. Slowly, but steadily.
Java has done well for itself, and contrary to popular belief, is alive and kicking. If it wants to keep on top of the game, it needs to keep adapting to the demands of the generation. As of now, it seems to be listening to the right Oracle for once.
 Because Java has a long, very long way to go. Twenty years are but a blip on the radar.
 Comparison with Python because Python is the stick that people use to bash Java with. It’s open source, compact, easier to get started with, has a huge standard library, and everyone and their dog can write Python code. So its a good candidate for comparison. Apart from that fact that I absolutely despise the language and its principles. Not to mention the indents. Oh, the indents.
Share this post on :