Artikel

 
Oktober 2010 | Artikel

Love, Peace and Harmony

(Link zum Artikel: http://www.it-republik.de/jaxenter/artikel/3401)

Die flinke Feder

Text: Bernd Fondermann
  • Teilen
  • kommentieren
  • empfehlen
  • Bookmark and Share
Wenn Open Source eine Befreiung ist, dann sind sie alle befreit: Das Betriebssystem, die Versionskontrolle, die IDE, das Build-Tool, der Compiler, der HTTP-Server, ja sogar der Java-EE-Server und die Datenbank. Wenn Open Source die Liebe und der Frieden ist, dann sind alle IT-Nutzer Engel. Können Sie mir folgen? Drücken wir es weniger esoterisch, mehr im heutigen englischen "Business-Sprech" aus: Open Source ist eine "Commodity" – das heißt ein Rohstoff, eine Selbstverständlichkeit, die Grundlage. Das bedeutet aber auch: Der Versuch, mit einem kostenpflichtigen Ant-Konkurrenten oder einer teuren Servlet Engine den Markt zu beglücken, dürfte schnell mit dem eigenen Frust enden.

Keine andere Firma hat so viel zur Commoditization der Softwarewelt beigetragen wie Sun Microsystems, zuletzt börsennotiert mit dem Kürzel "JAVA". Durch die Sun'sche "Große Offenlegung" der letzten Dekade sind ganze Segmente neu von der Open-Source-Erosion erfasst worden: Büroanwendungen (OpenOffice), Java (OpenJDK), High-end-Unix-Betriebssysteme (OpenSolaris) und unzählige andere Software, siehe http://java.net (aber schauen Sie schnell, wer weiß, wie lange es noch zugänglich ist). Und vergessen wir auf keinen Fall, dass es alles schon viel früher anfing, als Sun überredet werden konnte, ihre Servlet Engine in ein Apache-Projekt zu überführen, aus dem der Tomcat hervorging.

Die meisten der heutigen Softwareprojekte basieren auf Java (neben C und C++). Besonders sichtbar wird das bei der Apache Software Foundation. Alle dort angesiedelten Java-Projekte laufen seit Anbeginn überwiegend auf der Java-VM von Sun, werden mit dem Sun Compiler gebaut und gegen deren JDK verlinkt. Wenn von heute auf morgen das JDK nicht mehr zur Verfügung stünde, hätten die allermeisten Apache Committer endlich mal Zeit, Scala oder Clojure zu lernen... Wie meinen Sie? Die laufen auch auf dem JDK? Na sowas!

Wenn man so will, ist also die originäre Java-Umgebung, entwickelt von Sun, heute im Besitz von Oracle, eine der allergrößten Selbstverständlichkeiten in der IT-Landschaft überhaupt. Bitte diesen Satz nochmal langsam und laut lesen. Ohne das JDK kann die IT komplett einpacken. Und ich meine nicht die Programmierer, ich meine alle, inklusive der Nutzer von IT. Kein Google, kein Amazon, kein SAP, kein Twitter, nix mehr.

Seltsamerweise hat, was beim Tomcat und den anderen großen Softwareprodukten noch klappte, bei der Java-Laufzeitumgebung noch nie so recht geklappt. Was Sprache, VM und JDK anging, waren die Öffnungsprozesse immer zäh und schwierig. Der Java Community Process [1] über jcp.org hat bei diesen zentralen Themen nie wirklich floriert und kam über den unseligen Lizenzstreit zwischen Sun und der ASF weitgehend zum Erliegen. Von wegen Community. Da hilft es nur wenig, wenn James Gosling heute von seinem ehemaligen Arbeitgeber fordert, Java freizugeben – dies hätte er tatkräftig unterstützen können, als er noch als Java-Guru selbst ein Wörtchen mitzureden hatte.

Er hätte beispielsweise Geir Magnusson Jr. unterstützen können. Geir ist seit vielen Jahren Apaches Abgeordneter für den JCP, und er kann ein Lied davon singen, Gottseidank tut er es nicht. Überflüssig zu erwähnen, dass er keine Haare mehr auf dem Kopf trägt. Er ist auch derjenige, der mit seinen Mitstreitern nach dem Ärger im JBoss-Projekt den J2EE Server Apache Geronimo entwickelt und dessen kommerziellen Ableger an die IBM verkaufte. Dort und später bei Intel dann trug er maßgeblich dazu bei, die ersten Bausteine in das Apache-Harmony-Projekt [2] zu überführen. Harmony wird oftmals als Treiber für die Überführung des Sun JDK ins OpenJDK und die Wahl von Gnu-Public-Lizenz [3] gesehen, aber andere Aspekte werden sicher auch eine gewichtige Rolle gespielt haben, wie zum Beispiel Patente.

Patente. Das böse Wort. Das Ende von Liebe und Frieden. Wäre OpenJDK unter die Apache-Lizenz 2.0 [4] gestellt worden, so wäre deren Paragraph 3 zur Anwendung gekommen, der mit dem Satz beginnt: "Grant of Patent License." (Bewilligung einer Patentlizenz) Und es wäre uns erspart geblieben, über obskure Patente sowie deren Bedeutung und Anwendbarkeit zu philosophieren.

Nun, es kam anders. Harmony musste eine Reinraum-Implementierung von Java machen, mit erhöhter Überprüfbarkeit was Herkunft und Entstehung des Quellcodes angeht, nicht vergleichbar mit anderen Apache-Projekten. Diese Tatsache zusammen mit der Problematik, dass sich Harmony nicht eine Java-SE-konforme Implementierung nennen darf, hat diesem Projekt viel Energie gekostet. So sind Geir und seine Mitstreiter bisher gescheitert, eine zertifizierte Java-Standardedition unter einer Apache-Lizenz zu veröffentlichen.

OpenJDK steht unter Kontrolle von Oracle. Bis heute ist unbekannt, ob sich Oracles Klage gegen Googles Android nur gegen die Dalvik VM oder auch gegen das Android JDK richtet, welches auf Apache Harmony basiert. IBM springt auf den Zug auf, auf Kosten seiner Unterstützung des freien Harmony Projekts.

Verhärtete Fronten überall. Wir sind heute in einer Situation, wo die technische Basis und die beispiellose Kontinuität von Java in unsicheres Fahrwasser geraten sind. Viele Unternehmen, die auch Oracles Datenbankflaggschiff nutzen, haben millionenschwere Investments in Java-Entwicklung getätigt und tun es jedes Jahr aufs Neue. Wäre ich an verantwortlicher Stelle in einem solchen Unternehmen tätig, wüsste ich, was ich Oracle deutlich machen würde: Was wir brauchen ist Love, Peace and Apache Harmony.

Bernd Fondermann (bernd.fondermann[at]brainlounge.de) ist freiberuflicher Softwarearchitekt und Consultant in Frankfurt a. M. Er beschäftigt sich mit innovativen Open-Source-Technologien wie Apache Hadoop und Lucene und ist Member der Apache Software Foundation und Vice President Apache Labs. Dieser Text gibt seine persönliche Meinung wieder und ist keine offizielle Stellungnahme der Apache Software Foundation.
  1. http://jcp.org/en/procedures/jcp2
  2. http://harmony.apache.org/
  3. http://www.gnu.org/licenses/old-licenses/gpl-2.0.html#TOC1
  4. http://www.apache.org/licenses/

andere Artikel dieser Serie


Anzeige

Kommentare

Gravatar Eberhard Wolff 14.10.2010
um 13:11 Uhr
Hier wird ja nun der Eindruck erweckt, dass Oracle/Sun mit dem Open JDK machen kann, was sie wollen. Aber das ist ja ein Open-Source-Projekt mit GPL. Man kann es also forken. Und das Projekt bekommt jetzt mehr Mitarbeiter von IBM - das wird IBM mehr Einfluss geben. Oder täusche ich mich hier irgendwo? #zitieren
Gravatar steve 14.10.2010
um 13:32 Uhr
Was bringt einem ein Fork, bei dem man 5 Minuten später von Oracle in Grund und Boden geklagt wird? Zumal man a dem "Fork" ja nicht wirklich "forken" kann, weil der "Fork" immer noch die Kompatibilitätstests bestehen muss (falls man die überhaupt bekommt, siehe Apache Harmony). Also keine Weiterentwicklung, keine Möglichkeit der Verbesserung existierende Komponenten, ... toller Fork. #zitieren
Gravatar Andreas 14.10.2010
um 14:51 Uhr
Endlich mal einer der ganz deutlich sagt, was diese Sun-Übernahme durch Oracle und der Deal mit IBM bedeutet !
O. wird sicherlich versuchen aus all diesen Dingen Geld zu machen (das ist noch nichts schlimmes), und dazu jedes Mittel nutzten und darauf verzichten, sich eine solche Community zu halten (das finde ich ziemlich schlimm) ... und sie werden über die Leichen der Open-Source-Gemeinde steigen.

Ich sollte mir mal langsam C# anschauen .....
#zitieren
Gravatar Michi 14.10.2010
um 15:17 Uhr
@Andreas wenn du den Open Source-Ansatz so sehr magst und die "Community" (die gab es übrigens auch schon bevor Java halbwegs "geöffnet" wurde), dann bist du im Microsoft-Lager wohl an einer ganz falschen Adresse. ;)
Hat eigentlich jemand Harmony selbst genutzt, also nicht Android, sondern Harmony?
#zitieren
Gravatar Bernd Fondermann 14.10.2010
um 16:48 Uhr
@Eberhard Wolff: Das stimmt in der Tat. Man darf nur nicht vergessen wie es bis dato war und was jetzt verloren geht: Es gab einen Community Prozess, der von allen Playern mitgestaltet wurde und eine gewisse Zeit auch richtig gut funktionierte. Von JEE gibt es Closed Source-, GPL- und ASL- Implementierungen. Is doch für jeden was dabei. #zitieren
Gravatar M. Eimer 14.10.2010
um 17:14 Uhr
Friede, Freude, Eierkuchen. Nun ja, am 30.11.2009 kommentierte die ASF die Ablehnung der Java EE 6 Spezifikation: 'This vote is not a comment on the technical merits of the JSR." (http://jcp.org/en/jsr/results?id=5025) #zitieren
Gravatar Bernd Fondermann 14.10.2010
um 17:49 Uhr
@M. Eimer: Ähnliche Kommentare gaben Intel, IBM und SAP ab. (ebendort, und bei weiteren JSR Ballots.) - Da war es dann vielleicht noch nicht mit dem Eierkuchen, aber zumindest mit dem Frieden vorbei. Grund dafür war die ASL-inkompatible Lizenz des JavaSE Zertifizierungskits - alle anderen JSR haben diese Beschränkung nicht. #zitieren
Gravatar M. Eimer 14.10.2010
um 18:06 Uhr
@ Bernd Fondermann
Richtig. Von IBM ist zu hören, dass sie mit Oracle zusammenarbeiten wollen. Von Apache, Intel und SAP noch nicht.

P.S.: "On 2009-11-19 Google Inc. voted Yes with no comment."
#zitieren
Gravatar M. Eimer 14.10.2010
um 18:21 Uhr
Wobei ich wohl noch anmerken sollte, dass sich nur die ASF gegen den JSR entschieden hat. Intel und SAP haben sich enthalten und IBM dafür gestimmt. #zitieren
Gravatar Bernd Fondermann 14.10.2010
um 19:34 Uhr
Apache kann nicht an OpenJDK mitarbeiten, da sie laut ihren Statuten ausschliesslich Code unter der Apache Software License veröffentlichen darf. Jeder Committer ist natürlich frei überall mitzuarbeiten wo er nur will. Eine ASL/BSD-lizensierte Version von Java (die auch Java heißen darf) wird es aber nun absehbar nicht mehr geben - im Gegensatz zu allen(!) anderen JSRs - da bin ich froh, daß es immerhin OpenJDK gibt. Ansonsten... #zitieren
Gravatar M. Eimer 15.10.2010
um 23:41 Uhr
@Bernd Fondermann
Wenn die ASF nicht mitarbeiten kann, dann soll sie es lassen.
#zitieren

Anzeige

zurück zum Seitenanfang