If you do an Internet search on the phrase, “Is Java dead,” more than 62 million hits will come up. The idea that Java has passed its useful life has been predicted for almost a decade. And yet Java remains the No. 1 programming language, according to surveys.
At the same time, enterprises are becoming more comfortable with having a polyglot programming environment, allowing developers the flexibility to use the tools they consider appropriate for the task at hand.
This makes it more likely – not less – that Java will continue to thrive. If enterprise environments are becoming more splintered, Java, with its huge installed base and experienced programmers, is unlikely to be overtaken by any new language for many years to come.
“Currently, 12 million developers run Java,” said Jim Tyrrell, Senior Principal Solutions Architect, Red Hat. “There are 30 billion active Java Virtual Machines, and 21 billion cloud-connected JVMs. It’s the top developer choice for the cloud.”
Tyrrell pointed out that Red Hat, for instance, has announced that it will be supporting OpenJDK with version 8 until 2023. That doesn’t mean that Java won’t continue to evolve.
“Certainly some of these newer languages, in the context of containers, have much smaller footprints and much shorter start-up times,” Tyrrell said. “The Java community has realized that is indeed a challenge, and is working on that in the context of newer Java virtual machines to run in a smaller footprint and start up nearly as quickly.”
Tyrrell also cited the development of Graal, a new high performance Java compiler. “It’s a really neat way to run JVM in a much smaller footprint,” he said.
But if there are all these new languages that offer advantages over Java, why will it continue so strongly? Tyrrell offered several reasons.
First, in today’s competitive employment market, Java offers a major advantage – the ability to find and hire talent. As Tyrrell observed, “We’ve produced Java programmers for the better part of 20 years.” Finding a programmer with experience in any of the newer languages is much more of a challenge.
Also, there is a robust ecosystem of projects at sites like GitHub that use Java as their core language. A search on GitHub currently turns up more than 750,000 repository results. By comparison, a search for Kotlin produces about 43,000 results.
Just as important, there are many sources for robust, enterprise-level support for Java-based projects and programs, including both Oracle and Red Hat. For many of the emerging languages, “it isn’t always clear to me where you’d officially get help if you were looking for it,” Tyrrell said.
Related to this, Tyrrell noted that Oracle’s continued stewardship of Java JVM and Red Hat’s ongoing OpenJDK project provide competitive balance, giving enterprises and programmers choices and a level of control.
Other companies also continue to make tools that support Java. For instance, Microsoft’s Visual Studio (VS) Code has “a pretty robust set of Java plug-ins that make writing Java code in that editor very easy,” he said.
Colleges and universities continue to offer courses in Java programming. While some may see this as a mistake, Tyrrell said Java provides a good foundation. “I don’t think anyone would go wrong learning java as an object oriented vehicle,” he said. “The amount of online help is just amazing to me. I’m sure it’s there for other languages, but it’s just a vote of confidence, if you will. You can trust that you’re going to be able to find answers for any problems you may have along the way.”