It is safe to say Oracle’s announcement about charging a fee for the use of Java stirred the industry up. So far, Java could largely be used for free. And now look at this cut off! But what is behind that? What are going to be the effects, both positive and negative, for companies?
Developing with Java has been quite comfortable so far, especially due to Oracle’s provision of free, version-specific updates, particularly security updates, partly over several years and for several versions simultaneously. The comfort of that did not only make working with only one version easier – there was barely any pressure to switch to a new version, all according to the motto “never change a running system”. But the rapid further developments have also been whirling into established development environments, demanding for innovations to be implemented in an even quicker way. As several companies in the IT world have already demonstrated, Oracle is now relying on shorter cycles in which new versions are published. This innovation has caused a controversial discussion in the industry, since with this shortening, a new license policy simultaneously comes into force. What was often announced in the old structure for a new release – planned for a distant future -, is now supposed to be available within a very short time. The downside is that this rapid pace poses profound challenges to IT departments. In addition, each update involves an often enormous effort in terms of migration and testing, which, last but not least due to short cycles, extremely affects resource planning. Finally, the question arises about what causes an update during a development project, which often lasts longer than six months.
Incidentally, this commercial Java-licensing is not entirely new. When using a Java version after the end of free public updates, it was possible to obtain fee-based additional support and update services. Additional functions in the area of monitoring and error analysis were also provided via fee-based licenses (“Java Commercial Features”).
The following two graphics illustrate the effects this change has on license policy:
Figure 1: Previous Release Policy
Figure 1 shows the updates relating to the elimination of security holes.
Figure 2: Future Release Systematics
The new release policy, which is based on fixed time intervals, provides much more planning security for Java updates.
But what are the daily consequences of this change of release structure? For companies, this means that from January 1st 2019 on, Oracle Java will only be available as a paid license for commercial use on production systems, i.e. for servers and desktops. The license scope includes the provision of feature-related updates, fixes and patches. Another change regarding Oracle’s fee-based support is the so-called Long Term Support (LTS), a possibility to receive professional services for several years, which however only concerns Java versions 8 and 11.
Another possibility is the use of a free Java version (the so-called OpenJDK), but without the updates and bug fixes from Oracle. It should be noted that this does not include the security updates, which are indispensable in my cases. The community takes care of providing these “non-bindingly”, which represents an increased risk particularly for projects. Finally, we can only hope that from “Java 11” on, the OpenJDK and Oracle versions of Java are actually going to be 100% identical – a promise that by no means has always been kept in the past.
The event of Java being used as part of another product poses an interesting special role. Particularly if an Oracle product is used, Oracle will continue providing Java free of charge, including the access to the “non-public releases”. This is especially important for Oracle E-Business Suite or Weblogic customers, as they will not be affected by the upcoming licensing policy.
Conclusion: The new structure of the support policy of Oracle Java presents a drastic change. Not only a new price structure, but also the versatile application variants require an intensive investigation of the application areas of Java development within companies. Detailed knowledge of the internal process structures is of advantage in finding the most efficient solution.
Author: Johannes Michler
Image source: © Peshkova / istockphoto.com