[HttpServer series] Who uses Java anymore ?
( Note: You can read the full series at: https://blog.mandraketech.in/series/java-http-server )
It was only recently, after the release of Java 21, that I was re-energised about the language and its potential.
To give you a background, I started programming in Java in the early days in 1997, and have seen it grow from 1.0.3 to its near stagnation in Java 8. It just felt that we are never going to get any updated language features. All users of the JRE were so afraid of moving to a newer version, because Java 9 broke everything, nearly. Java 11 came as a relief, but it was too little too late, and no one moved.
We saw all the web frameworks of old ( Struts, are you listening ? ) go away into oblivion, and Spring take its place. Java Beans, and the whole Enterprise Edition was too complex to work with, for regular web applications. Servlets stuck around, but there we no good hosting solutions, and still are not, that would allow one to write a Java based Web application, and just put it on a shared host. PHP took the cake there. In the recent years Javascript moved fast and innovated. And brought in the speed, and ecosystem that had stagnated under the leadership of Sun Microsystems.
At some point in the not so distant past, Oracle took over the mantle. And they brought their engineering prowess to Java. A long term game plan, and delivery like clock work helped get from 9 to 21, with a release every 6 months. The OpenJDK initiative started by Sun took a final shape closer to Java 20, but with effect from Java 17. We now have a lot of vendors who invest in building the Java Virtual machine, from the OpenJDK sources, and provide commercial support. They also provide specially optimised JVMs for different use cases.
Now there is trust in the platform. Trust that it will continue to evolve. Trust that there will be innovation. And there will be regular releases and support. The pace has picked up. Finally Java is ready to move faster than any other language and platform around.
So, my favourite language is back on the table for me. I am waiting for it to fully enable Functional Programming constructs, but thats not a deal breaker.
So, here I come Java. Re-learning the philosophy of the language, and the new features.
And along the way, building an "Annotation Free" web application using the JRE's HttpServer implementation. Trying to build a "ExpressJS" kind of code along the way. Who knows, if people like it, I may spawn it into a library.
Subscribe to my newsletter
Read articles from Navneet Karnani directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
Navneet Karnani
Navneet Karnani
An industry veteran and a polyglot. Discovered my passion for technology in 1985. Have been building ideas, products, and teams since then. Home Page: https://www.mandraketech.in I prefer using GitLab over GitHub. Version control profile, for personal work, at: https://gitlab.com/navneetkarnani