18.01.2021 | Svend Back

Java 2021: Nach 25 Jahren kein kalter Kaffee

Im Februar 1996 habe ich unter dem Titel „Heisser Kaffee – Programmierung mit Java“ einen der ersten deutschen Artikel zu Java überhaupt in der C’t geschrieben:
„Seit einiger Zeit macht eine Programmiersprache Furore. Sie ist leistungsfähig, portabel und leicht zu lernen. Sie reitet nicht nur auf der Internet-Welle, sondern verleiht ihr auch neuen Schwung. Und das Beste: die Macher von Sun geben das Entwicklerkit kostenlos heraus.“

Bis auf den letzten Satz passt die Einleitung immer noch: Die aktuelle Version heißt 15, die Syntax hat sich weiterentwickelt, die Nutzung breitete sich vom Internet in alle Bereiche der IT aus. Dass jede Android App in Java entwickelt wird, sorgte für eine unfassbare Verbreitung. Im letzten Satz muss man eigentlich nur „Sun“ durch „Oracle“ als Markeninhaber von „Java“ ersetzen, die Sun vor 10 Jahre gekauft haben.

Java führt weiterhin die Ranglisten an, wenn es um die Häufigkeit der Nutzung in Projekten geht. Als Lingua franca ist Java beliebt, bei aller Komplexität in der Umsetzung. Ein so universell einsetzbarer Nachfolger ist trotz diverser Versuche mit C#, Python, Go, SWIFT etc. immer noch nicht sichtbar. Auch ganz weit oben im Ranking findet sich JavaScript, das mit Sicherheit von der vermeintlichen Nähe zu Java profitiert hat.

Doch vor 2 Jahren kam Unruhe in die Java-Community. War die Entwicklergemeinde 2010 bei der Übernahme des Java Erfinders Sun Microsystems durch Oracle schon skeptisch, ob der weitere Einsatz von Java in der SW Entwicklung sich zu einem trojanischen Pferd entwickeln könnte. So fühlen sich heute diejenigen bestätigt, die in dem jetzt von Oracle angebotenen Support-Modell für kommerzielle Anwendungen einen Verrat an der Java-Idee sehen. Kritiker fühlen sich bestätigt, dass das Ende der freien Nutzung von Java erreicht sei.

Die Tatsache, dass eine Gebühr für die kommerzielle Nutzung und Support einer Technologie verlangt wird, ist in meinen Augen legitim. Vielleicht würde es Sun Microsystems noch geben, wenn nicht der damalige CEO Jonathan Schwartz gezockt hätte. Er setzte auf die Karte des „Sharings“ der von Sun entwickelten Intellectual Property wie OpenOffice, MySQL oder auch Java. Schwartz hoffte indirekt über die intensive Nutzung der freien Technologien die eigene HW- Plattform (SPARC) besser zu verkaufen. Ein lukratives Angebot von Abonnements oder Wartungsverträgen für diese Programme wurde von Sun versäumt.

Weiterlesen auf Seite 2

Über die Preise und das neue Lizenzmodell von Oracle selbst kann man wahrlich streiten. Auch bei Java legt Oracle zunächst seine in die Jahre gekommene Lizenzmetriken aus dem letzten Jahrhundert an, als es noch keine Virtualisierung gab. Als Basis für die Anzahl der Java SE (Server) Subskriptionen wird die Anzahl der physischen Cores eines Systems bzw. bei Virtualisierung die Gesamtheit der physischen Cores einer Virtualisierungsumgebung genommen. Ein Angebot für virtuelle Systeme gibt es nur für Anwendungen in den Clouds von AWS, Microsoft oder Oracle. Wer Java auch nur in einer virtuellen Maschine einer großen virtualisierten Umgebung – egal ob HyperV, VSphere oder KVM – einsetzt muss die komplette HW lizenzieren. Die Java SE Subskription kosten ca. 27€ pro Desktop-Nutzer und 270€ für je 2 Cores auf den Servern, wo Java abläuft, bzw. installiert ist.

Doch bleibt die Entwicklungsumgebung weiterhin frei. Es werden jedoch nicht mehr alle Patches – insbesondere für ältere Versionen – frei zur Verfügung gestellt. Wenn Kunden eine kostenfreie Laufzeitumgebung suchen, wird mit openJDK auch eine Alternative geboten, die jedoch mangels Supportangebot nicht für kritische Anwendungen eingesetzt werden sollte.

Die neue Lizenzpolitik für Java ist ein Weckruf für IT-Verantwortliche. Java wurde nahezu unkontrolliert in den Unternehmen kopiert, da es weder Lizenzschlüssel noch Kosten gab. Wie man zuvor das Patching der aufgrund der Verbreitung häufig angegriffen Java-Pakete realisierte, ist im Nachhinein schwer nachvollziehbar. Die Problematik des Wildwuchses ist durchaus übertragbar auf andere freie Technologien wie z.B. der Apache Tomcat, MySQL Community Edition, Python etc..

So war in der ersten Zeit nach der Einführung der Java SE Subskriptionen die an uns im Tech Data Oracle Team häufigste gestellte Frage, wie man denn feststellen könnte, wo überall Java in welcher Version lief. SW Asset Management  beschränkte sich zumeist auf kostenpflichtige Komponenten. Also mussten die Anbieter von IT-Inventur-SW ihre Angebote nachrüsten, um die Installation von Java zu detektieren. Auch gab es Missverständnisse auszuräumen, da ja nur die Windows, Linux und Windows-Umgebungen aber nicht das z.B. Android-Handys betroffen waren.

Wir haben den Unternehmen geraten, sich ggf. mit einer initialen Java SE Subskription Zeit zu kaufen für ein Analyse:

  • Erfassung, welche Prozesse und Programme nutzen Java
    • Anfrage bei den SW Lieferanten nach Abhängigkeiten
    • Die meisten SW Lieferanten (mit wenigen Ausnahme von z.B. SAP, IBM) verzichteten auf das kostspielige Bündel eine Oracle Java SE Subskription mit Ihrem Produkt und setzten stattdessen eine vom Endkunden zur Verfügung gestellte Java-Laufzeitumgebung voraus
  • Klassifizierung und Priorisierung
    • Löschen von nicht mehr genutzten Umgebungen, auch um die Angriffsfläche für Angriffe zu verringern
    • Einsatz der weiterhin kostenfreien openJDK-Laufzeitumgebung in nicht kritischen Umgebungen
    • Aus Compliance Gründen müssen bei dem Einsatz von Java in kritischen Umgebungen auch der Zugriff Support definiert sein.
  • Preisvergleiche der Java Angebote von Azul, IBM, RedHat und eben Oracle
    • Überprüfung auf Machbarkeit bei Alternativen

Die Oracle Partnergemeinde hat im ersten Jahr noch fleißig mit Angeboten für Java SE Subskriptionen und Beratung unterstützen können. Seit 2020 hat Oracle den Vertrieb der Java SE Subskriptionen allerdings komplett an sich gezogen. Oracle ermöglicht nur noch für Kunden aus dem öffentlichen Bereich Partnerangebote mit stark reduzierter Marge.

Doch es gibt genug zu tun: Ich bekomme auch jetzt noch mehrere Anfragen in der Woche zu diesem Thema. Mit einer guten Beratung, die die Java Umgebung beim Kunden absichert und ggf. auch Kosten reduziert, kann ein Partner immer noch punkten.

Über den Autor

Svend Back | Website

Svend Back ist seit Februar 2013 bei Tech Data als Key Account Manager und Cloud Champion in der Oracle Abteilung tätig. Zuvor war er zunächst bei Sun Microsystems und später bei Oracle in verschiedenen Positionen als Leiter der Vertriebsunterstützung für Partner, als Partner Account Manager und auch im Support tätig. Ein Hintergrund als SW Entwickler für iPhone Apps komplettieren das Portfolio. Mit dieser Bandbreite und Historie betreut er Oracle Partner über die die gesamte Produktbreite von SW-Lizenzen über SPARC Server, Engineered Systems und Cloud Umgebungen sowohl kommerziell als auch im Presales.

Fragen und Anregungen können Sie via Mail an Svend Back richten.

  • Drei Fragen an den Autoren

    Was ist deine Funktion bei Tech Data?

    Key Account Manager in der Software BU fokussiert auf das Oracle Geschäft.

    Wie lange bist du schon beim Unternehmen?

    Im Februar 2021 sind es 8 Jahre.

    Was für einen Unterschied macht deine Arbeit?

    Große Hersteller wie Oracle leben in einen eigenen Kosmos, in dem immer wieder interessante Geschäftsmöglichkeiten entstehen. Für Tech Data versuche ich bei meinem Hersteller für unsere Partner diese Schätze zu heben, die nicht unbedingt ganz oben auf den Marketingfolien stehen. So war z.B. die Einführung der Java Subskriptionen vor 2 Jahren eigentlich nur eine Randnotiz, die unseren Partnern in dem Jahr ein sehr gutes Neugeschäft beschert hat. Mit mehr als 100 Jahren Erfahrung in der Oracle Abteilung sind wir hierfür gut aufgestellt.

Zur Specialists Übersicht