Java isn't even slightly dead and here's why...
When the entire Java ecosystem is a first class system on Microsoft’s cloud, you know the language is sticking around...
C# and even F# are more popular with developers. .NET gets endorsed for cross-platform experience by everyone including AWS. And the OpenJDK FAQ still talks about 2011 and 2012 as the future. It may be 25 years-plus, but Java is not only surviving, but maybe even thriving.
Only a few years ago, Oracle’s tenuous stewardship of enterprise Java was driving CTOs to invest in .NET but Java still sits in second place (alongside Python) in the most recent RedMonk language rankings. Much of that is down to the adaptability of a language that, thanks in part to the transition from Java EE to Jakarta EE at the Eclipse Foundation, continues to be in active development: Java 17 is about to arrive, with Java 18 due six months later.
The diversity of the Java ecosystem, the divergence of the different Java EE stacks and the availability of other JVM languages like Kotlin are both strengths and weaknesses; there are a lot of options, but they tend to be fragmented.
Inertia in enterprises and the continuing presence of Java on CS curriculums might account for the way developers on Stack Overflow are almost evenly split between loving and dreading the languagd. But it wouldn't explain the way Java’s so broadly used beyond enterprise (even if you don’t eount Android, which is slowly switching to Kotlin).
Uber only recently rearchitected its fulfilment platform [https://eng.uber.com/fulfillment-platform-rearchitecture/] and it chose Java. LinkedIn has more than 1,500 Java microservices in production. Minecraft was built in it. And nothing underlines the continuing strength of Java like support from a direction that would once have been surprising – Microsoft.
The Yammer back-end is in Java. Azure HDInisght and Synapse rely on it. Java is one of the four languages Microsoft focuses on for Azure (along with C#, python and TypeScript).
That’s one reason the company started sponsoring the AdoptOpenJDK project (set up to bring OpenJDK binaries to multiple platforms when Oracle switched Java SE to a pricey monthly subscription) in 2018. It acquired jClarity in 2019 to kickstart its Java platform team for Azure, worked with VMware to build a Java Spring service, Azure Spring Cloud, and with RedHat to put the classic JBoss EAP app server runtime on Azure App Service for Jakarta EE users (as well as running WebLogic and IBM Cloud Pack as services).
More recently, Microsoft ported OpenJDK to Windows on Arm (maybe in preparation for an Arm Windows Server VM in Azure) and released its own build of OpenJDK (tested against Eclipse Adoptium) earlier this year.
Microsoft’s interest in Java isn’t the reason it’s still going strong; it’s a testament to the staying power of the language – even in the face of how many developers dislike it.
When it comes down to it, Java is a general purpose programming language. And, even in these days of cloud native and specialised development, a general purpose programming language still really matters – especially when it’s integrated with a wide range of cloud services.
The ultimate law enforcement agency guide to going mobile
Best practices for implementing a mobile device programFree download
The business value of Red Hat OpenShift
Platform cost savings, ROI, and the challenges and opportunities of Red Hat OpenShiftFree download
Managing security and risk across the IT supply chain: A practical approach
Best practices for IT supply chain securityFree download
Digital remote monitoring and dispatch services’ impact on edge computing and data centres
Seven trends redefining remote monitoring and field service dispatch service requirementsFree download