Nach einem Jahrzehnt ist Open Source Java immer noch umstritten

Zehn Jahre später ist das Open-Sourcing von Java nach wie vor ein Streitpunkt. Viele in der Community loben die Bedeutung eines offenen Java, während andere die Handhabung kritisieren, einschließlich der Überzeugung, dass Sun Microsystems nicht weit genug gegangen ist.

Sun Microsystems hat am 13. November 2006 offiziell Java als Open-Source-Version bereitgestellt - ein Schritt, nach dem sich die Branche seit langem sehnt. Auf Javas Code war bereits vor diesem Datum zugegriffen worden - eine Strategie, die dazu beigetragen hat, die Plattform von Anfang an zu verbessern, stellt Java-Gründer James Gosling fest.

„Der Quellcode für Java war vom ersten Tag seiner Veröffentlichung im Jahr 1995 an für alle verfügbar“, sagt Gosling, der jetzt Chefarchitekt bei Liquid Robotics ist. „Wir wollten, dass die Community bei Sicherheitsanalysen, Fehlerberichten, Leistungsverbesserungen, dem Verständnis von Eckfällen und vielem mehr hilft. Es war sehr erfolgreich. “

Laut Gosling erlaubte die ursprüngliche Lizenz von Java den Nutzern, den Quellcode intern zu verwenden, aber nicht weiterzugeben. "Es war nicht" offen "genug für die" Open Source "-Menge", sagt er.

Suns Entscheidung

IBM wollte damals, dass Java zur Apache Software Foundation beigetragen wird, wo es unter der Apache-Lizenz vertrieben worden wäre. Letztendlich entschied sich Sun, Java auf die GNU General Public License umzustellen, die der damalige Sun-CEO Jonathan Schwartz als „bedeutsame“ Änderung bezeichnete. Unter der GPL müssten auch Derivate von Java verteilt werden, eine Verschiebung, die Java helfen soll, sich besser in die Open-Source-Community einzufügen, sagt Gosling.

Seit dem Open-Sourcing sind Sun und Oracle (das Sun Anfang 2010 übernommen hat) für Javas Entwicklung auf dem Fahrersitz geblieben, obwohl andere Parteien zum Code beigetragen haben. Während Gosling Oracle zeitweise für den Umgang mit Java beauftragt hat, sieht er das Open-Sourcing als vorteilhaft an.

„Es ist eine der am genauesten untersuchten und solidesten Software-Komponenten, die Sie finden werden. Die Beteiligung der Gemeinschaft war von entscheidender Bedeutung “, sagt er.

Das Schisma

Ein ehemaliger Oracle Java-Evangelist sieht die Open Source-Bewegung jedoch als verwässert an.

"Sun hat Java nicht per se als Open-Source-Version veröffentlicht", sagt Reza Rahman, der kürzlich gegen den Umgang von Oracle mit Enterprise Java protestiert hat. „Sie haben das JDK unter einer modifizierten GPL-Lizenz als Open Source veröffentlicht. Insbesondere die Java SE- und Java EE-TCKs (Technology Compatibility Kits) bleiben Closed Source. “

Laut Rahman war dies ein erhebliches Problem für Projekte wie Apache Harmony sowie für Community-Mitglieder, die einen Beitrag zu den TCKs leisten möchten.

"In der Tat hat Sun viel Kontrolle über Java behalten, auch wenn der JCP [Java Community Process] jetzt relativ offen ist", sagt er. "Insbesondere Sun und Oracle kontrollieren das geistige Eigentum und die Urheberrechte von Java vollständig über das JCP."

Sun war damals kein Open-Source-Champion, fügt Rahman hinzu.

"Open-Sourcing des JDK hatte viel damit zu tun, dass Sun angesichts des Drucks der breiteren Community, der Industrie und von IBM die Glaubwürdigkeit bewahrt und die Akzeptanz für Java erhöht", sagt Rahman. „Schon damals hat Sun die Beiträge zu OpenJDK ziemlich streng kontrolliert. Oracle macht genau das Gleiche. “

Gosling mag die Entscheidung für die GPL.

"Ich denke, es hat gut funktioniert", sagt er. "Wir mussten immer die Freiheit der Community gegen 'schlechte Schauspieler' jonglieren, die immer versuchten, die Community zu entführen."

Während beim Open-Sourcing viel anders hätte gemacht werden können, wäre es nur schlimmer geworden, sagt Gosling. "Die Vermeidung mächtiger Entführungsversuche war der Hauptgrund dafür, dass die Lizenzen weniger liberal waren, als viele es gerne hätten."

Die Java-Community sei derzeit auf einem ziemlich guten Weg. "Ich freue mich sehr auf JDK 10." Java Development Kit 9, nicht 10, soll nächsten Sommer mit Modularität erscheinen.

Rahman, jetzt leitender Architekt bei CapTech Consulting, wünscht sich eine Reform des JCP, um die starke Kontrolle von Oracle zu verringern. Trotz seiner Vorbehalte gegen das Open-Sourcing mag Rahman den Umzug immer noch.

„Für Java ist es auf jeden Fall wichtig, vollständig Open Source zu sein. Es ermöglicht einen gewissen Beitrag der Community, hält den Code relativ offen, hilft bei der Einführung, indem es das Vertrauen in das Unternehmen stärkt, und ermöglicht die Verwendung von OpenJDK-Code durch Dritte “, sagt er.

Im weiteren Sinne trägt das Open-Sourcing zum Aufbau eines starken Ökosystems rund um Java bei, indem es signalisiert, dass die Plattform Open Source-freundlich ist, fügt Rahman hinzu. "Ohne Open-Sourcing des JDK glaube ich nicht, dass Java dort wäre, wo es heute ist."

Zum Thema passende Artikel

  • Rückblick: Die vier großen Java-IDEs verglichen
  • Java mit 20: Wie es die Programmierung für immer verändert hat
  • Java mit 20: Erfolge, Misserfolge und Zukunft
  • Java mit 20: Die JVM, das andere große Erbe von Java
  • Java um 20: Der Programmierjuggernaut rollt weiter
  • Java vs. Node.js: Ein epischer Kampf um Entwickler