Why Bringing Java Into the Future Is Important for Developers
August 05, 2020

Mark Little
Red Hat

On May 23, 2020, Java celebrated its 25th anniversary. While that is still fairly young for a programming language, Java continues to rank among the top two programming languages in the world, according to the Tiobe index, and it has no signs of slowing down. However, despite its popularity, Java does have some well-agreed upon downsides. With more and more business-critical applications using Kubernetes, it is more important than ever to bring Java into the future, and not let it get left behind. Read on to learn more.


Java Popularity

First, let's explore why Java has been so popular over the last 25 years.

For starters, Java is a language that is both user-friendly and flexible. When written in a Java Virtual Machine (JVM), Java delivers on the promise of "write once, run anywhere" and therefore can run on any operating system, even if it is different from the one it was developed on.

Java is also highly scalable, versatile and dependable — once a Java application has been spun up, it can run reliably for months to serve hundreds of concurrent requests.

Java is also a good bet for the enterprise because there are so many Java developers, so once Java applications are spun up, they can be maintained by professionals with varying skill levels. This also means that Java programmers have been in high demand for the past 2 years.

Lastly, Java is an object-oriented language, making it both more secure and relatively easier to learn than non-object-oriented languages, such as C++.

Java Complaints

Now, what are some of the complaints against Java?

Most commonly, we hear that in a lightweight, low-footprint world, Java takes up too much space, needing too many megabytes worth of class files and creating too many gigabytes of runtime memory footprint. This is in direct contrast with containers, for example, that are both lightweight and low memory.

The other common complaint is that Java takes too long to start up — in a world where new applications can be spun up in seconds, if not milliseconds, waiting five minutes for Java apps to start is considered way too long.

Additionally, when Java was created, Kubernetes, microservices, serverless and even containers did not exist yet, so it was originally designed for monolithic application stacks as opposed to cloud-native, modern applications.

Java In a Kubernetes-Driven Future

So by now, you may be thinking, Java is doomed! There is no way it can continue to be so popular when there are new programming languages like Ruby, Go and Rust that are designed to work seamlessly with serverless, microservices, etc. Well, not necessarily.

These new and shiny languages are not used by app developers — like Java — but are system development languages, so they do not have capabilities for business customers in the same way that Java does. Java still makes the most sense for building more secure, business-ready applications.

However, one advantage of the new languages is that they are built to work in the Kubernetes landscape, so the question now becomes: how can we get Java there, too?

There are technologies that help to bring Java into the modern, cloud-native app dev world. There are open source projects that help developers create applications in Java that have faster startup times and a lower memory footprint, meaning that applications developers write in Java can "play nice" with microservices, Kubernetes and containers, without the developer needing to learn an entirely new programming language. This is important from the business perspective as well, because developers do not need to be trained in a different language from what they already know, speeding up time to market for applications. By putting developer's needs first, these open source tools enable more innovation to happen faster.

Java is not going away anytime soon, and in order for it to be compatible with newer technology innovations, developers need new ways to be able to continue to program in it. Open source tools can help enable developers to use a language they already know to build modern, Kubernetes-native, business critical applications.

Mark Little is Senior Director, Engineering, Middleware, Runtimes, at Red Hat
Share this

Industry News

December 11, 2024

CyberArk announced the launch of FuzzyAI, an open-source framework that helps organizations identify and address AI model vulnerabilities, like guardrail bypassing and harmful output generation, in cloud-hosted and in-house AI models.

December 11, 2024

Grid Dynamics announced the launch of its developer portal.

December 10, 2024

LTIMindtree announced a strategic partnership with GitHub.

December 10, 2024

Solace announced the addition of micro-integrations to its event-driven integration and streaming platform, Solace PubSub+ Platform.

December 10, 2024

GitGuardian has unveiled its NHI Security strategy, a transformative approach to securing the explosive growth of NHIs and the secrets they depend on.

December 09, 2024

Linkerd announced the release of Linkerd 2.17, a new version of Linkerd that introduces several major new features to the project: egress traffic visibility and control; rate limiting; and federated services, a powerful new multicluster primitive that combines services running in multiple clusters into a single logical service.

December 05, 2024

Amazon Web Services (AWS) announced new capabilities for Amazon Q Developer, a generative AI assistant for software development, that take the undifferentiated heavy-lifting out of complex and time-consuming application migration and modernization projects, saving customers and partners time and money.

December 05, 2024

OpenText announced a strategic partnership with Secure Code Warrior to integrate its dynamic learning platform into the OpenText Fortify application security product suite.

December 05, 2024

Salesforce announced a series of updates for Heroku, a platform as a service (PaaS) offering that enables teams to build, deploy, and scale modern applications entirely in the cloud.

December 05, 2024

Onapsis announced the expansion of its Control product line to include a new bundle that enhances application security testing capabilities for SAP Business Technology Platform (BTP).

December 04, 2024

Amazon Web Services announced new enhancements to Amazon Q Developer, including agents that automate unit testing, documentation, and code reviews to help developers build faster across the entire software development process, and a capability to help users address operational issues in a fraction of the time.

December 04, 2024

Amazon Web Services (AWS) and GitLab announced an integrated offering that brings together GitLab Duo with Amazon Q.

December 04, 2024

Tenable announced the release of Tenable Patch Management, an autonomous patch solution built to quickly and effectively close vulnerability exposures in a unified solution.

December 04, 2024

SurrealDB announced the launch of Surreal Cloud, a Database-as-a-Service (DBaaS) offering.