Warum OSGi nicht den Sprung in den Mainstream schafft

Hartmut Schlosser

Warum ist OSGi nach 14 Jahren immer noch nicht im Mainstream angekommen? OSGi-Freund Sheikh Sajid wundert sich in seinem Blog über diesen Umstand und präsentiert fünf Gründe, die seiner Erfahrung nach der Verbreitung von OSGi im Wege stehen:

1.) Elitismus

Die OSGi Alliance erscheint vielen als elitäre Gruppe, in die nur große Unternehmen involviert sind. Ein echtes Engagement mit einer öffentlichen Community scheint nicht stattzufinden.

2.) Fachjargon

Die OSGi Spezifikation ist voller Fachausdrücke, die selbst einfache Dinge komplex aussehen lassen – beispielsweise Blueprint und Compendium.

3.) Fear, Uncertainty, Doubt

Über OSGi werden regelmäßig Horrorstorys verbreitet, nur wenige davon gehen wirklich sachlich zu Werk. Neue Entwickler werden aber abgeschreckt, wenn Leute wie Rod Johnson behaupten, OSGi sei komplex.

4.) Zerstreuungsproblem

Es existiert keine offizielle Referenz-Implementierung aller OSGi-Spezifikationen. Stattdessen  implementieren verschiedene Gruppen bei Apache, Eclipse, etc. jeweils bestimmte Teil-Spezifikationen. Für Entwickler bedeutet das, dass sie sich die verschiedenen Teile selbst zusammensuchen müssen.

5.) Stimme der Community?

Der OSGi Blog scheint der persönliche Blog von Peter Kriens zu sein. Eine echte Community scheint sich hier nicht zu äußern. Auch gibt es kein aktives OSGi Wiki.

Auch Lösungsvorschläge präsentiert Sajid:

–        Die OSGi Alliance sollte in eine OSGi Foundation überführt werden, in der auch Individuen ohne Unternehmensbindung ihren Platz finden. Ein Modell wie der JCP oder Spring könnte das Vorbild sein und zeigen, dass OSGi eine offene Community ist – kein elitärer Club der Reichen.

–        Fachjargon abschaffen: API statt Spezifikation, CDI Container statt Blueprint Container, etc. Generell wäre eine begriffliche Annäherung an Java EE wünschenswert.

–        Statt Horrorstorys sollten Berichte über erfolgreiche OSGi-Projekte verbreitet werden. Best Practices, Design Pattern, Architektur-Tipps etc. sollten regelmäßig erscheinen.

–        Wie bei Java EE mit Glassfish sollte auch eine komplette Referenzimplementierung der OSGi Specs vorliegen. Ein OSGi-Core-Projekt nach dem Vorbild des OpenJDK würde OSGi sehr viel zugänglicher machen.

–        Der OSGi Blog sollte von verschiedenen Community-Mitgliedern gespeist werden. Das Wiki sollte mehr Pflege erhalten und Up-to-Date-Infos, Tutorials, Snippets, etc. umfassen.

Triviale Lösung, schwierige Umsetzung?

Sheikh Sajid nennt hier sicherlich einige valide Punkte – doch kann man sich tatsächlich wundern, wie banal die Lösungen dafür aussähen. Sollte eine Technologie-Community, die mit derart umfassenden Ansprüchen auftritt (immerhin will OSGi der Modularisierungs-Standard für das JDK sein), nicht in der Lage sein, ein Wiki zu pflegen, positive Blogposts zu erzeugen, ein vernünftiges Governance-Modell zu etablieren? Nach 14 Jahren?

Eine Erklärung findet sich möglicherweise im starken technischen Fokus der OSGi-Kerngruppe. Die OSGi-Hauptverantwortlichen scheinen oft mit der Überzeugung aufzutreten, eine gute Technologie spreche für sich. Die Erfahrungen haben aber gezeigt: Dem ist nicht so! Historisch haben sich nicht immer die besten Technologien durchgesetzt!

Und so mag eine technisch versierte Fachgruppe von Java Tooling und Middleware-Entwicklern OSGi für sich entdeckt haben – Eclipse, Glassfish, Felix, Geronimo, Websphere, Virgo, etc. Dem Otto-Normal-Entwickler bleiben die OSGi-Tore indes oft verschlossen, da nur wenige Einstiegshilfen geboten werden und die Vorteile von OSGi zu wenig publik gemacht werden.

Peter Kriens versucht sich zwar gerade an einer Brücke zum Mainstream, indem er ein OSGi Application Framework (aka „Babysteps“, wir berichteten) aufbaut. Dieser Versuch ist sicherlich ehrenswert. Doch wird gerade hier wieder die Technologie-Brille der OSGi Community deutlich, die die Lösung in einem neuen Framework sucht, statt sich etwa um eine bessere Publicity oder um ein besseres Governance-Modell zu kümmern. Die Eclipse Foundation könnte hier als Vorbild dienen, in der die Balance zwischen Community und Unternehmen, zwischen Offenheit und Kommerzialität, zwischen Technologie und Marketing recht gut gehalten wird.

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Hartmut Schlosser ist Redakteur und Online-Koordinator bei Software & Support Media. Seine Spezialgebiete liegen bei Java-Enterprise-Technologien, JavaFX, Eclipse und DevOps. Vor seiner Tätigkeit bei S & S Media studierte er Musik, Informatik, französische Philologie und Ethnologie.
Kommentare
  1. Mondula2014-05-26 18:06:29

    Wir haben den Einsatz von OSGi im Web-Umfeld geprüft und unsere Erfahrungen hier aufgeschrieben: http://blog.mondula.com/osgi-%E2%80%93-benefits-and-drawbacks.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.