Was ist Eclipse? Teil 3

Preis |
Kostenlos |
Titel |
Eclipse |
Hersteller |
Eclipse Foundation |
Lizenz |
Eclipse Public Licence (EPL) |
Preis |
Kostenlos |
Download |
http://www.eclipse.org/downloads/
|
Link |
http://www.eclipse.org/
|
In den letzten beiden Teilen der Serie „Was ist Eclipse?“ starteten wir eine Rundreise durch das Eclipse-Universum und widmeten uns der Frage, auf die es so viele Antworten gibt: Was genau ist denn eigentlich Eclipse? Wir begannen mit der bekanntesten Antwort: Eclipse ist eine IDE. Von dort aus ging es weiter über Eclipse als Toolsplattform, danach zur Rich Client Platform, die Eclipse zur Anwendungsplattform macht, bis hin zu den Runtime-Technologien von Eclipse. Bisher haben wir die Frage vor allem technisch beantwortet. Doch Eclipse war von Anfang an mehr als ein paar Millionen Zeilen Code. Woher kommt diese Technologie, welche Rollen und Personen stehen dahinter? Und vielleicht ist es noch wichtiger zu wissen, warum alle diese Frameworks Open Source sind, was die Eclipse Foundation tut, was die EPL ist und wie man mit Open-Source-Software im Eclipse-Ökosystem Geld verdienen kann. Diesen Fragen widmen wir uns in diesem dritten und letzten Teil der Serie „Was ist Eclipse?“.
Open Source
Um die starke Verknüpfung von Eclipse mit Open Source, der Eclipse Public License (EPL) und den Aufgaben der Eclipse Foundation zu verstehen, begeben wir uns wieder einmal zu den Anfängen von Eclipse. Das Ziel von IBM war Ende der neunziger Jahre, eine gemeinsame Toolsplattform zu entwickeln, auf der aktuelle und zukünftige Produkte basieren sollten. Als Kriterium für den Erfolg der Plattform identifizierte IBM von Anfang an die Erweiterbarkeit. Es sollte zum einen für den Benutzer der Plattform möglich sein, neue Funktionen hinzuzufügen. Zum anderen sollten Erweiterungen auch von Drittanbietern ausgeliefert werden können. Die geforderte Erweiterbarkeit schlägt sich technisch in der Modularität von Eclipse und zahlreichen Konzepten wie den Extension Points nieder. Doch die technische Möglichkeit alleine hätte nicht den heutigen Erfolg der Eclipse-Plattform bewirkt. Zu Beginn wollten insbesondere Drittanbieter nicht in die neue und unbewährte Plattform investieren. Bliebe die Plattform unter der alleinigen Kontrolle von IBM, gingen Drittanbieter von Erweiterungen eine starke Abhängigkeit zu IBM und damit ein Risiko ein. Das Risiko wäre bei Eclipse noch höher gewesen, wurde die Plattform ja quasi neu aus dem Boden gestampft. IBM sah die Lösung des Problems in der Offenlegung des Quellcodes. Im November 2001 gründete IBM zusammen mit acht weiteren Firmen das Eclipse-Konsortium und schuf das Portal eclipse.org. Unter diesen Gründungsmitgliedern befanden sich neben Rational Software und TogetherSoft auch Konkurrenten wie WebGain und Borland. Das Konsortium verfolgte neue Prinzipien, nach denen noch heute das Eclipse-Ökosystem funktioniert. Die Plattform ist Open Source und wird von der Community kontrolliert. Die Mitglieder des Konsortiums kümmern sich um das Marketing und können auf Basis der freien Plattform kommerzielle Produkte anbieten. Die Grundidee dahinter ist, dass die Plattform Funktionen bietet, die verschiendene Hersteller in ihren Produkten benötigen, die ihnen aber für sich keine Wettbewerbsvorteile bieten. Der meist kleinere Teil der Produkte, der das tatsächliche Geschäftsmodell einer Firma ausmacht, basiert auf der Plattform und wird unter einer kommerziellen Lizenz vertrieben. Die Liste der Firmen, die zu Eclipse beitrugen, war damals sehr kurz. IBM lieferte die mit Abstand umfangreichsten Codebeiträge.
Die Eclipse Public License und die Eclipse Foundation
In den folgenden zwei Jahren nach der Gründung des Eclipse-Konsortiums 2001 kamen die ersten offenen Releases von Eclipse heraus. Insbesondere die Eclipse IDE wurde von der Entwicklergemeinde positiv aufgenommen. Ein kontinuierliches Wachstum führte zu dem Marktanteil bei den Java IDEs von über 60 Prozent (Abb. 1) [1].
Allerdings war das Feedback der Industrie auf den Aufbau des Ökosystems gemischt, da Eclipse im Wesentlichen von IBM kontrolliert war. Diese Tatsache hielt große Hersteller zurück, verstärkt in Eclipse zu investieren. Eclipse musste also unabhängiger werden. Das war die Geburtsstunde der Eclipse Foundation, einer Non-Profit-Organisation. Das Kernziel der Eclipse Foundation ist der Aufbau einer herstellerneutralen, offenen und transparenten Community rund um Eclipse. Die Foundation definiert dazu die Aufgaben ihrer durch die Mitglieder finanzierten Mitarbeiter in vier Kerndienste:
- IT-Infrastruktur
- Entwicklung des Ökosystems
- Entwicklungsprozess
- Intellectual-Properties-(IP-)Management
Durch eine unabhängige Infrastruktur, beispielsweise Webseiten, SCMs und Build-Server, wird im Wesentlichen Offenheit und Transparenz erreicht. Kein einzelner Hersteller kann beispielsweise einfach Code aus dem offenen Teil von Eclipse entfernen. Auch die hier anfallenden Kosten werden über Mitgliedsbeiträge finanziert. Die Eclipse Foundation sorgt dafür, neue Mitglieder zu werben, Eclipse als Technologie bekannt zu machen und damit das Ökosystem zu entwickeln. Die Eclipse-Community trifft sich mindestens zweimal im Jahr auf der EclipseCon und der EclipseCon Europe [3]. Zusätzlich organisieren Mitglieder der Community mit Unterstützung der Eclipse Foundation lokale Democamps, bei denen die neuesten Technologien vorgestellt werden. Auch auf vielen anderen Veranstaltungen wie auf der JAX [4] hat Eclipse durch entsprechende Tracks seinen festen Platz.
Der Entwicklungsprozess legt die Regeln der Zusammenarbeit der Interessensgruppen fest. Im Eclipse-Prozess wird so beispielsweise zwischen Committern und Contributern unterschieden. Committer dürfen den Code eines Projekts direkt verändern, Änderungen von Contributern müssen von Committern reviewed werden. Unter Adoptern versteht man im Eclipse-Prozess Firmen oder Individuen, die auf Eclipse-Technolgie aufbauen, während User tatsächliche Benutzer eines der Endprodukte sind. Aktuell verzeichnet die Eclipse Foundation circa 1000 Committer und etwa zehnmal so viele Contributer. Die Anzahl der Adopter und User ist durch die offene Verteilung der Eclipse-Komponenten schwer abzuschätzen, man kann aber zumindest bei den Usern von einer hohen siebenstelligen Zahl ausgehen (Abb. 2).
Ein weiteres Kernelement des Eclipse-Prozesses ist der Release Train, in dessen Rahmen es einmal pro Jahr ein gemeinsames Release vieler Kernkomponenten von Eclipse gibt. Nur durch den Eclipse-Prozess ist die heutige Qualität und Kompatibilität von Eclipse-Projekten bei gleichzeitigem hohen Innovationstempo möglich.
Nicht zuletzt ist die Kernaufgabe der Eclipse Foundation das Intellectual-Properties-(IP-)Management. Hierzu wurde 2004 die maßgeschneiderte Eclipse Public License (EPL) [2] eingeführt, unter der heute alle Eclipse-Komponenten stehen. Die EPL erlaubt im Gegensatz zu anderen Open-Source-Lizenzen explizit die kommerzielle Verwendung der Komponenten. Das bedeutet, ein Hersteller darf eine Eclipse-Komponente in ein Produkt einbauen und dieses kommerziell vertreiben. Als zweiten großen Teil des IP-Managements stellt die Eclipse Foundation über Review-Prozesse sicher, dass Eclipse-Projekte zur EPL kompatiblen Code erzeugen und nicht beispielsweise Drittkomponenten einsetzen, die eine kommerzielle Nutzung verbieten würden. Das bietet für Hersteller von Produkten auf Basis von Eclipse eine in der Open-Source-Welt seltene rechtliche Sicherheit. Gerade diese Sicherheit ermöglicht Investitionen ins Ökosystem, viele Hersteller stellen beispielsweise bezahlte Committer für bestimmte Projekte. Andere Firmen bieten umgekehrt Support, Training und Wartung für Eclipse-Projekte an. Das Modell des Eclipse-Ökosystems dient mittlerweile häufig als Vorbild, wie sich Offenheit und Transparenz mit kommerziellen Interessen vereinen lassen.
Fazit
Die Reise durch das Eclipse-Universum ließe sich natürlich noch weiter fortsetzen, und sicher gibt es für viele noch weitere wichtige Bedeutungen von Eclipse. Nach der technischen Definition von Eclipse in den letzten beiden Beiträgen drehte sich der dritte Teil um den organisatorischen Teil sowie um Firmen und Personen, die hinter Eclipse stehen. Eclipse hat seit seiner Geburt jedes Jahr wieder ein rasantes Wachstum erfahren und sich immer wieder neu erfunden, technisch und organisatorisch. Durch so genannte Industry Working Groups organisieren sich seit kurzer Zeit Firmen mit gemeinsamen Interessen. So blieb und bleibt Eclipse nie stehen. Zuletzt, und für uns am wichtigsten, ist Eclipse aber auch eine Familie aus Gleichgesinnten. Gleichgesinnte, die neue, innovative, aber auch stabile und einsetzbare Technologien erschaffen möchten und sich dazu nächtelang mit Problemen auseinandersetzen. Gleichgesinnte, die sich wochenlang in Foren über die beste Lösung streiten, die jahrelang die oft immer wieder gleichen Fragen von Einsteigern in Newsgroups beantworten und die sich immer über eine Rückmeldung freuen, falls sie, liebe Leser, eine dieser Technologien erfolgreich einsetzen.
Serie: Was ist Eclipse?
Teil 1: Eclipse als Java IDE, IDE Framework und Tools-Plattform
Teil 2: Eclipse als Anwendungsframework und Runtime
Teil 3: Open Source, Eclipse Foundation, EPL und das Eclipse-Ökosystem
Hinterlasse einen Kommentar