Stepan Popov - Fotolia
Was kann die Java-Community 2018 von Oracle erwarten?
Wie geht es weiter mit Java? Zumindest 2018 werden wichtige Änderungen erwartet. Doch wie reagiert die Community? Viele Fragen bleiben unbeantwortet.
Die Aufregung von 2017 hat sich gelegt. Aber die Java-Community wird noch einige Zeit brauchen, um alle Ankündigungen von Oracle zum Jahresende – von der Übernahme von OpenJDK bis hin zu einem sechsmonatigen Release-Zyklen – zu verarbeiten. Viele Fragen über die Zukunft bleiben aber offen. Vor allem ist unklar, was Oracle beim Java SE Development Kit (JDK) und bei seiner Java-Plattform vorhat.
„Ich denke, Oracle hat endlich erkannt, dass Open Source eine gute Sache ist“, sagt Red Hat Vice President of Engineering, Mark Little.
Red Hat blickt bekanntlich auf eine lange Geschichte des Rapid Software Development zurück und hat sich dabei immer auf innovative, Community-basierte Techniken gestützt. Oracle hat an der Java-Front einen ähnlichen Ansatz verfolgt, indem es sein kommerziell lizenziertes JDK mit der OpenJDK-Initiative zusammenbrachte. Damit hat Oracle der Open-Source-Community zuvor geschlossene Features wie Java Flight Recorder und Java Mission Control geöffnet.
„Anstatt mit der Community zu konkurrieren, hat Oracle erkannt, dass es besser ist, mit ihr zu zusammenzuarbeiten, und die Community zu nutzen, um Dinge schneller zu erledigen. Und vielleicht sogar ein bisschen innovativer zu sein, als es ein einzelnes Unternehmen sein kann“, sagt Little.
Natürlich ist Oracle kein Unbekannter für Community-Beiträge. Unter der Leitung von Oracle war die Java-Plattform zwar nicht so Community-getrieben wie andere Open-Source-Projekte wie Linux oder Jenkins. Aber es war auch keine völlig einseitige Angelegenheit. Oracle leitet zum Beispiel den Java Community Process (JCP), um festzustellen, welche neuen APIs in das JDK aufgenommen und wie die APIs weiterentwickelt und aktualisiert werden sollen.
JCP ist keine reine Oracle-Angelegenheit, sondern ein weitgehend demokratischer Prozess, an dem sich Organisationen wie IBM, Red Hat, Google und Azul beteiligen. Aber trotz des egalitär erscheinenden Prozesses haben viele in der Community das Gefühl, dass Oracle gelegentlich nur eigennützig handelt.
„Trotz der Tatsache, dass andere Anbieter und andere Leute in der Community im Laufe der Jahre aktiv an der Definition verschiedener Java-Spezifikationen beteiligt waren, gab es immer auch eine von einem einzigen Anbieter dominierte Sicht“, erklärt Little.
Oracle plant nicht nur, das OpenJDK zu nutzen. Der Konzern hat auch detaillierte Pläne für einen sechsmonatigen Release-Rhythmus. Das hat viele überrascht. Denn historisch gesehen hat Oracle es bisher kaum geschafft, mit Distributionen zurechtzukommen, die alle zwei Jahre erneuert werden.
„Ich kann mir sechsmonatige Release-Zyklen nicht vorstellen“, sagt Jeanne Boyarsky, Softwareentwicklerin bei CodeRanch und Autorin des Oracle Certified Associate Java SE Programmer I Study Guide.
„Oracle sagt, dass der sechsmonatige Ryhthmus den zweijährigen Release-Zyklus ersetzt. Tatsächlich haben sie aber noch nie einen zweijährigen Release-Zyklus eingehalten. Sie wollten vielleicht einen solchen Zyklus, aber umgesetzt wurde er nie“, erläutert sie und weist auf die lange Geschichte der Verzögerungen in Java hin. „Letztendlich wurde ein dreijähriger Release-Zyklus daraus. Also dürfte es ziemlich schwierig sein, in einem Schritt von diesen drei Jahren auf sechs Monate umzustellen.“
Die Leute fragen sich auch, wie sich der sechsmonatige Zeitplan sowohl auf Oracle als auch auf die Anwender auswirken wird. Was genau lässt sich in nur sechs Monaten umsetzen? Wie wird sich der sechsmonatige Rhythmus auf die Kultur der beteiligten Community auswirken?
Wenn ein Feature, das für eine bestimmte Version vorgesehen ist, noch nicht fertig ist, kann Oracle es einfach aus der Featureliste entfernen und auf die nächste Version verschieben. Das könnte zu einer laxen Mentalität führen. Werden Entwickler und Ingenieure ihre Ziele und Meilensteine ebenfalls zurücknehmen oder zurückstellen, während die Java-Verantwortlichen mit den Schultern zucken und ihre Deadlines auf die nächste Veröffentlichung verschieben? Eine Verkettung dieses Verhaltens kann paradoxerweise dazu führen, dass neue Features länger verzögert werden als früher.
Glücklicherweise ist nichts, was Oracle 2017 vorgeschlagen hat, im Jahr 2018 und darüber hinaus unmöglich zu erreichen. Aber damit das OpenJDK ein Erfolg wird und die sechsmonatigen Release-Zyklen einen Mehrwert bieten, muss sich die Java-Community engagieren und aktiv werden.
„Das wird erfolgreich sein oder floppen, da es von Anbietern vorangetrieben wird“, sagt Little. „Es wird gelingen oder scheitern, weil sich die breitere Community daran beteiligt. Wenn sie sich nicht einmischen, wenn sie ihr Geld nicht in die Hand nehmen, dann werden die Dinge nicht besser als sie unter Sun waren und unter Oracle sind.“
Wenn man sich fragt, ob die Java-Community genügend Mittel hat, sich gegen aggressive Unternehmensziele durchzusetzen, braucht man nur auf die schnellen Fortschritte zu schauen, die gemacht wurden, um das Eclipse MicroProfile zu schreiben, zu entwickeln, zu veröffentlichen und dann zur Verfügung zu stellen.
In weniger als 18 Monaten lieferte die Open-Source-Community eine vollwertige Plattform für die Entwicklung von Microservices, die alle auf der Java-EE-Plattform basieren. „Wenn etwas für die Community und die Anbieter einen Wert hat, dann legen die Leute auch einen Zahn zu und engagieren sich“, sagt Little.
Folgen Sie SearchEnterpriseSoftware.de auch auf Twitter, Google+, Xing und Facebook!