Looking back on 15 years of Oracle Java and what it means for the ecosystem

When Oracle acquired Sun Microsystems in April 2009 for $7.4 billion, Oracle’s Larry Ellison said that Java “the most important software asset we’ve ever acquired.” Two months later, appearing on stage with Ellison at the JavaOne conference, Sun chairman Scott McNealy directly answered the audience’s biggest question. “There’s a big, pink elephant in the room,” he told the audience of software developers. “Is this Oracle thing a good thing for Java?

Although companies often don’t disclose the underlying platform they use to drive their software investments, Java underpins everything from microservices and back-end logic to big data processingand Java’s enduring compatibility, productivity, and massive ecosystem and tool support have made it truly ubiquitous. As we mark 15 years of Oracle Java, it’s worth revisiting McNealy’s question: What has Oracle’s stewardship of Java meant to its business users and development ecosystem?

Professional

The first few years had their share of turmoil, as they did when Apache was official he withdrew its membership in the Java Community Process and lengthy lawsuit between Oracle and Google over the use of Java in the creation of Android. But over time, the Java platform came to life in a period of relative peace.

Oracle began rolling out a steady stream of improvements in major Java releases, and the company significantly increased the number of releases, moving to a predictable and stable six-month schedule, away from a history of unpredictability and three to six years between feature updates. The speed of each release and robust feature set have helped ensure that Java continues to be one of the most relevant programming languages ​​for any organization.

Under Oracle’s leadership, Java and the OpenJDK project in which it was developed have reliably delivered 13 consecutive feature update releases at a perfect 6-month cadence. A new Long Term Support (LTS) release is released every two years, with security updates and bug fixes every three months. The company also deserves praise for its continued technical progress.

From a technical standpoint, Oracle introduced new language features and improvements to the JDK, Java runtime, and JVM, as well as system improvements such as improved support for Docker and maintenance of regular security updates.

Against

Concerns about Oracle’s true commitment to maintaining the open source nature of Java have existed from the beginning. In 2018, Oracle announced that in January 2019, it would end free public updates for Java 8 and changing how public updates to Oracle Java will be available and licensed in the future. This move was very disruptive and led to a surge in activity among other companies and organizations offering their own OpenJDK distributions with support and updates. In this regard, the open source ecosystem has continued to thrive, giving developers a wide range of options to suit their needs.

The announcement in 2018 that public updates to Oracle Java 8 would only be available with a paid subscription to Oracle Java SE showed to many the shortcomings of Oracle’s management and was a foreshadowing of the complex licensing models and high costs associated with Java support and updates that we see today.

In 2019, the Oracle Java license was changed again. It was free for personal and development use, but commercial users needed to subscribe. Seemingly as a result, Oracle’s popularity with Java developers began to sink. According to Azul 2023 State of Java Survey and Reportglobally 72% are considering switching from Oracle Java to a non-Oracle distribution, and 60% are already using a non-Oracle OpenJDK.

In 2023, the fourth major change in four years now requires organizations using Oracle Java to purchase a license for all employees even if only one employee or server has installed a licensable version of Java. With this latest pricing model, some customers have reported cost increases ranging from 2x – 12x. To add fuel to the fire, it seems that the pressures on the audit have also increased. According to Gartner, by In 2026, Oracle will audit more than 20% of organizations using Java applications, leading to unforeseen non-compliance fees.

These structural changes in licensing and price increases are straining IT budgets, especially for organizations that rely heavily on Java-based applications, and are leading many to explore cost optimization strategies.

A mixed bag

Answer to Scott McNealy’s 2009 question, “Is this Oracle thing a good thing for Java?” turns out to be a qualified yes. And Java must have been good for Oracle. Industry experts estimate that Oracle Java support revenue has grown by an order of magnitude since Oracle began aggressively monetizing Java in 2019. Oracle has done a good job keeping Java ubiquitous and popular. With all the languages ​​to choose from, it could have fallen out of favor, but Oracle deserves credit for keeping it up-to-date and relevant to developers.

However, Oracle Java’s licensing and pricing changes seem to have hit the entire ecosystem hard. It’s hard to trust a software partner that changes prices and licenses every year or two.

Despite this, and because of the healthy OpenJDK community that provides solid alternatives to Oracle, Java has remained one of the most popular programming languages. Azul’s 2023 State of Java Research and Report found that an overwhelming 98% of companies continue to use Java in their software applications or infrastructure, and a clear majority of these organizations report that Java is the backbone of the majority (60%+) of their applications.

Oracle will continue to have a major impact on the future of Java, adding new features to extend its longevity. At the same time, the JVM is incredibly versatile, and developers enjoy its flexibility without sacrificing performance. The OpenJDK community remains strong and continues to drive the platform forward. Seen through that prism, the future of Java remains optimistic.

Source link

Leave a Reply

Your email address will not be published. Required fields are marked *