More speed vicar? Oracle proposes to dramatically increase the release cycle tempo of Java SE
Oracle has proposed faster releases of Java SE (Standard Edition) in an effort to keep the open source platform relevant in today’s rapidly shifting tech landscape.
Until now, Java SE has been on a two-year release cycle, which was fine when “Java competed with just a few platforms which evolved at a similar stately pace..” But now Java competes with many platforms, all of which evolve at a more rapid pace.
Therefore Oracle feels that in order for Java to remain competitive, it “must not just continue to move forward - it must move forward faster.”
The proposal comes after Oracle last month decided to open up Java EE.
It said at the time that it was considering outsourcing Java Enterprise Edition (Java EE) to an open source foundation, after claiming that the current model wasn’t sufficiently able to respond to changing industry and technology demands.
And now Mark Reinhold, chief architect of the Java Platform Group at Oracle has warned that it past time for the same to happen to Java SE.
“For over twenty years the Java SE Platform and the JDK have evolved in large, irregular, and somewhat unpredictable steps,” blogged Reinhold. “Each feature release has been driven by one or a few significant features, and so the schedule of each release has been adjusted as needed - sometimes more than once! – in order to accommodate the development of those features.”
For example, Java EE 7, the last major iteration of the platform, was launched back in 2013 with an emphasis on HTML5 application development.
Java Platform, Standard Edition 8 (Java SE 8) was made generally available in 2014, and Java 9 should arrive in late September 2017, after being delayed in 2016.
Reinhold explained that there always been a tension between developers, who prefer rapid innovation, and enterprises, which prefer stability, and the fact that everyone prefers regular and predictable releases.
Reinhold had wanted two years ago that Oracle switches from the historical feature-driven release model to a time-driven “train” model, with a feature release every two years. But he said this two-year train model whilst it was appealing in theory, proved to be unworkable in practice.
He now feels that a two-year release cadence is simply too slow, and instead wants to ship a feature release every six months.
“That’s fast enough to minimise the pain of waiting for the next train, yet slow enough that we can still deliver each release at a high level of quality,” he wrote. So after after Java 9, he is proposing that Oracle adopts “a strict, time-based model with a new feature release every six months, update releases every quarter, and a long-term support release every three years.”
But he warned that the proposal will, if adopted, require major changes in how contributors in the OpenJDK Community produce the JDK itself.
“This proposal will, ultimately, affect every developer, user, and enterprise that relies upon Java,” Reinhold wrote. “It will, if successful, help Java remain competitive – while maintaining its core values of compatibility, reliability, and thoughtful evolution – for many years to come.”