19.05.2005, 15:17 Uhr
Rückblick mit durchzogener Bilanz
Am 23. Mai 1995 stellte Sun Microsystems Java offiziell vor - ein Schritt, der die Entwicklerwelt nachhaltig verändert hat. Doch die Geschichte von Java ist auch eine Geschichte verpasster Gelegenheiten. VON CATHARINA BUJNOCH
Ursprünglich startete Java sein Leben als Programmiersprache, um Entwicklern die Option zu eröffnen, bewegte Bilder für Webseiten zu erstellen. Doch nach und nach wuchs die Sprache zu einer umfassenden Sammlung an Software und Spezifikationen heran, die längst da zutaugen, beliebige Applikationen zu codieren. Diese laufen auf den unterschiedlichsten Rechnern, vom Mobiltelefon bis zum Mainframe-Rechner.
1995 punktete Java vor allem mit dem Mantra vom «einmal codiert, überall lauffähig » - also mit der Plattformunabhängigkeit, die dank einer eigenen Java Virtual Machine (JVM) beziehungsweise einem Java Runtime Environment (JRE) erreicht wird. Jedes Betriebssystem, für das eine JVM existiert, konnte fortan beliebige Java-Programme abspielen. Diese Plattformunabhängigkeit sollte das Leben der Entwickler enorm erleichtern, denn sie waren nicht mehr gezwungen, ihren Code mit entsprechendem Zeitaufwand immer und immer wieder zu rekompilieren, damit er auf unterschiedlichen Hardwaretypen lauffähig werde.
Hochs und Tiefs
Die Geschichte von Java wartet mit verschiedenen durchschlagenden Erfolgen auf, aber auch mit verpassten Chancen und mit einigen erbitterten Gerichtsverfahren. «Es war wie der Flug einer Rakete, von der niemand erwartet hätte, dass sie überhaupt so weit fliegen würde», sinnierte Jonathan Schwartz, Suns President und Chief Operating Officer anlässlich der in sehr bescheidenem Rahmen abgehaltenen Geburtstagsparty für Java, die Sun an ihrem Hauptsitz im kalifornischen Santa Clara organisiert hatte. Die aufgeräumte Stimmung der Partygäste erinnerte an eine Klassenzusammenkunft Jahre nach der Matur: Ehemalige Mitarbeiter, längst nicht mehr in Suns Diensten, umarmten ihre einstigen Kollegen. Es gab Freibier, Popcorn und Eis am Stiel, und Sun-Programmierer Hideya Kawahara spielte gar auf einer Ukulele auf, die optisch an «Duke» erinnerte, die knollennasige schwarzweisse Gestalt, die von Anfang an Javas Maskottchen war.
Die Geschichte von Java wartet mit verschiedenen durchschlagenden Erfolgen auf, aber auch mit verpassten Chancen und mit einigen erbitterten Gerichtsverfahren. «Es war wie der Flug einer Rakete, von der niemand erwartet hätte, dass sie überhaupt so weit fliegen würde», sinnierte Jonathan Schwartz, Suns President und Chief Operating Officer anlässlich der in sehr bescheidenem Rahmen abgehaltenen Geburtstagsparty für Java, die Sun an ihrem Hauptsitz im kalifornischen Santa Clara organisiert hatte. Die aufgeräumte Stimmung der Partygäste erinnerte an eine Klassenzusammenkunft Jahre nach der Matur: Ehemalige Mitarbeiter, längst nicht mehr in Suns Diensten, umarmten ihre einstigen Kollegen. Es gab Freibier, Popcorn und Eis am Stiel, und Sun-Programmierer Hideya Kawahara spielte gar auf einer Ukulele auf, die optisch an «Duke» erinnerte, die knollennasige schwarzweisse Gestalt, die von Anfang an Javas Maskottchen war.
James Gosling, Javas geistiger Vater und heute oberster Techniker von Suns Developer- Products-Gruppe, erinnerte an die Anfänge, lange vor dem Mai 1995, als er und sein Entwicklerteam sich vom Sun-Hauptsitz zurückzog und in angemieteten Büros einrichtete, um über die Zukunft der IT zu schwadronieren. «Wir liessen unserer Phantasie freien Lauf und wir dachten, wir debattierten über Science Fiction», so Gosling. «Doch weit gefehlt: Das war Javas Geburtsstunde.»
Unerwarteter Durchbruch
Dass Javas zehnter Geburtstag überhaupt ein Jubiläumstag werden würde, das erschien 1995 äusserst unwahrscheinlich. Damals galt Java als verworrene Technik, als kurioses Überbleibsel aus einem fehlgeschlagenen Versuch mit interaktivem Fernsehen namens Firstperson. Und während gleichzeitig das World Wide Web die Aufbruchstimmung schürte, gelang es dem Firstperson-Projektteam irgendwie, Suns Rechtsabteilung davon zu überzeugen, einen noch nie dagewesenen Präzedenzfall durchzuexerzieren: Der Java-Code wurde öffentlich gemacht. Zwar behielt sich Sun gewisse Kontrollmechanismen bezüglich der Distribution des Codes vor, doch der frei verfügbare Quellcode stiess auf grosses Echo in der Entwicklergemeinde. «Wir versuchten, so nah an Open Source zu kommen wie möglich», sagt Gosling.
Dass Javas zehnter Geburtstag überhaupt ein Jubiläumstag werden würde, das erschien 1995 äusserst unwahrscheinlich. Damals galt Java als verworrene Technik, als kurioses Überbleibsel aus einem fehlgeschlagenen Versuch mit interaktivem Fernsehen namens Firstperson. Und während gleichzeitig das World Wide Web die Aufbruchstimmung schürte, gelang es dem Firstperson-Projektteam irgendwie, Suns Rechtsabteilung davon zu überzeugen, einen noch nie dagewesenen Präzedenzfall durchzuexerzieren: Der Java-Code wurde öffentlich gemacht. Zwar behielt sich Sun gewisse Kontrollmechanismen bezüglich der Distribution des Codes vor, doch der frei verfügbare Quellcode stiess auf grosses Echo in der Entwicklergemeinde. «Wir versuchten, so nah an Open Source zu kommen wie möglich», sagt Gosling.
Den 23. Mai 1995, an dem Java anlässlich der Sunworld offiziell öffentlich vorgestellt wurde, hatten die Entwickler bereits mit Spannung erwartet, hatte doch die Gerüchteküche zuvor bereits heftig gebrodelt. Schon im März 1995 war eine erste Alphaversion zum Download vorgelegt worden. Die Szene war reif für eine sichere Programmiersprache, die mehr konnte als bloss Bewegtbilder für statische HTML-Seiten zu kreieren. In letzter Minute schloss Sun einen Deal ab, durch den Java in den Webbrowser Netscape Navigator integriert wurde. Ab da ging es zügig vorwärts, die Entwicklergemeinde stürzte sich förmlich auf Java. Bereits 1996 gab es mit Javaone eine eigene Konferenz, die 6000 Besucher anlockte. Drei Jahre später fanden über 20 000 den Weg zur Javaone. Und die Veranstaltung lebt bis heute, das nächste Mal ab 27. Juni in San Francisco.
In Javas Pioniertagen sah es eine Zeitlang so aus, als ob die gesamte Hightech- Branche einsteigen würde: Hewlett-Packard, IBM, Oracle und sogar Microsoft lizenzierten die Technik. «Alle wichtigen Hersteller schienen sich auf Java auszurichten, so etwas hatte ich nie zuvor und danach nie mehr in der Branche gesehen», sagt Rick Ross, Gründer und Präsident der Entwicklerorganisation Javalobby.org.
Über kurz oder lang fasste Java auf dem Server Fuss, wo sich Suns Java 2 Enterprise Edition (J2EE) als Brücke zwischen Backend-Systemen wie Datenbanken und dem Web etablieren konnte. In jüngerer Zeit wurde Java eine schnell wachsende Plattform für die Hersteller mobiler Geräte: Mitt lerweile dürften mehr als 500 Millionen Java-Embedded-Devices an die Verbraucher verkauft worden sein, schätzt Sun.
Ungenutzte Chancen
Blickt man auf 1995 zurück, so sind allerdings die verpassten Gelegenheiten genauso präsent wie Javas Erfolge. Als erstes ist Suns eigenes Unvermögen zu nennen, sich als Java-Verkäuferin durchzusetzen. Während Fremdfirmen wie IBM, BEA oder Borland Milliarden Dollar mit Java-Servern und -Tools verdienten, war keines von Suns Java-Produkten kommerziell erfolgreich. «Ohne Übertreibung kann man sagen, dass Java den Erfolg von IBMs Softwaregruppe neu belebte, wenn nicht gar überhaupt erst erschaffen hat», urteilt Analyst James Governor von Red Monk. «IBM kapierte, dass sie erfolgreich auf ein fremdes Produkt aufsetzen konnte. Linux kam nach Java - und genau diese Erfahrung, dass Erfolg auch möglich war mit einem Produkt, das sie selbst nicht entwickelt hatte, hatte grossen Einfluss bei IBM.»
Blickt man auf 1995 zurück, so sind allerdings die verpassten Gelegenheiten genauso präsent wie Javas Erfolge. Als erstes ist Suns eigenes Unvermögen zu nennen, sich als Java-Verkäuferin durchzusetzen. Während Fremdfirmen wie IBM, BEA oder Borland Milliarden Dollar mit Java-Servern und -Tools verdienten, war keines von Suns Java-Produkten kommerziell erfolgreich. «Ohne Übertreibung kann man sagen, dass Java den Erfolg von IBMs Softwaregruppe neu belebte, wenn nicht gar überhaupt erst erschaffen hat», urteilt Analyst James Governor von Red Monk. «IBM kapierte, dass sie erfolgreich auf ein fremdes Produkt aufsetzen konnte. Linux kam nach Java - und genau diese Erfahrung, dass Erfolg auch möglich war mit einem Produkt, das sie selbst nicht entwickelt hatte, hatte grossen Einfluss bei IBM.»
Sun hat nie öffentlich deklariert, wie viel Geld sie für Java ausgegeben noch wie viel sie damit eingespielt hat. Lieber äusserte sich Suns CEO und Chairman Scott McNealy diplomatisch, es gehe um indirekte Vorteile: «Stellen Sie sich vor, was passiert wäre, hätten wir Java nicht erfunden - wo wäre Sun heute?», sinnierte er vor kurzem. «Alles wäre Windows, und wir wären erledigt. Wenn die Entwickler nicht Java-Webservices schreiben, schreiben sie eben für Dotnet. Mit anderen Worten, sie schreiben für Windows. Und wenn sie für Windows schreiben, brauchen sie keine Sun-Hardware.»
Das Versagen ihrer Entwickler-Tools mag für Sun nicht mehr als ein wunder Punkt sein. Doch die vergebene Chance, Java auf dem Desktop zu etablieren, ist geradezu eine offene Wunde. Ein bitterer, siebenjähriger Streit mit Microsoft um die zentrale Frage der eigenen Java-Implementierung Redmonds zermürbte Suns Ressourcen. Und obwohl die Kalifornier schlussendlich dank einer aussergerichtlichen Einigung im letzten Jahr zwei Milliarden Dollar kassierten, konnte Java auf dem Desktop nie Bedeutung
gewinnen.
gewinnen.
Das sei jedoch nicht allein Microsoft anzulasten, ist Rick Ross von Javalobby überzeugt. Er gibt auch Suns «Eigensinnnigkeit und Arroganz» die Schuld, die es Unternehmen wie Apple oder Intel sehr schwer gemacht habe, zu Java beizutragen: «Wenn Sie bedenken, wer damals als durchaus begeisterter Java-Partner zu haben gewesen wäre, so werden Sie feststellen, dass alle zu einem gewissen Zeitpunkt sich entweder Microsoft oder Sun zuwendten», so Ross.
Im schwarzweissen Bild des Rückblicks existieren also durchaus Grauschattierungen. Und während unbestritten ist, dass Sun selbst sich verschiedene Chancen vermasselt hat, geht auch leicht vergessen, wie schnell Java in den späten 1990-er Jahren wuchs und wie rasch es sich verbreitete. «Es gab so viele Möglichkeiten, dass es schwer war zu entscheiden, was am besten zu tun sei», fasst Graham Hamilton zusammen, einst Mitarbeiter in Suns Java-Plattformteam. «Heute ist der Markt gereifter, heute weiss man, was man zu tun hat.»
Links zum Thema
www.java.net, java.sun.com
www.java-forum.org
www.java-news-center.org
www.jsurfer.org
www.java-performance-portal.org
www.jugs.ch
www.javacore.de
JAVA UND OPEN SOURCE
Die Sache mit der «Java-Falle»
Von Richard Stallman, dem radikalen Verfechter von Free Software und Gründer des GNU-Projekts, kommt der Vorwurf, das vermeintlich so unabhängig machende Java locke die Entwicklergemeinde in Wirklichkeit in die Falle («Java trap»). Stallman bemängelt, dass Java selbst zwar «frei» ist, doch für die Ausführung des Programmcodes auf eine Virtual Machine und damit proprietäre Software zurückgegriffen werden muss. Sun wiederum denkt nach wie vor nicht daran, ihre JVM unter einer GNU-Lizenzierung frei zu geben. Trotzdem musste Sun vor wenigen Wochen gewisse Zugeständnisse machen. So sollen Entwickler erstens künftig für den internen Gebrauch Zugriff auf den Quellcode bekommen und diesen ändern können. Dafür können sie Java kostenfrei als Jiul (Java Internal Use License) - ausgesprochen wie das englische «jewel», also «Juwel» - lizenzieren. Sun erwartet, dass die Nutzer die Kompatibiltät mit der J2SE-Plattform einhalten werden - erzwingen kann sie dies nicht. Zweitens lanciert Sun die JDL (Java Distribution License) für kommerzielle Anwendungen. Die bereits Ende 2004 eingeführte JRL (Java Research License) für Schulen und Forschungsinstitutionen komplettiert Suns mehr oder weniger freiwilliges Bemühen um einfachere und flexiblere Lizenzmodelle, die sie sich im Rahmen ihres «Peabody»-Projekts zum Ziel gesetzt hat. Allerdings gelten dies Modelle - zumindest vorläufig - nur für die Basissoftware J2SE.