Das Wissensportal für IT-Professionals. Entdecke die Tiefe und Breite unseres IT-Contents in exklusiven Themenchannels und Magazinmarken.

SIGS DATACOM GmbH

Lindlaustraße 2c, 53842 Troisdorf

Tel: +49 (0)2241/2341-100

kundenservice@sigs-datacom.de

Interview mit Isabel Drost-Fromm

Isabel Drost-Fromm arbeitet als Open-Source-Strategin für die Europace AG in der Fintech-Branche und ist bei der Apache Software Foundation aktiv, die dieses Jahr 20 Jahre alt wird. Sie spricht mit JavaSPEKTRUM unter anderem über den „Apache-Way” zur Entwicklung von Open-Source-Projekten und über den Umgang mit Legacy-Software.

  • 25.10.2019
  • Lesezeit: 11 Minuten
  • 90 Views

Hallo Isabel, du bist Expertin für Open-Source-Softwareentwicklung.

Ich bin seit 15 Jahren bei der „Apache Software Foundation” (ASF) unterwegs. Das fing an der Humboldt-Universität Berlin mit Text-, Link-Mining- und Web-Analyse an. Alles Bestandteile von Websuche. Die Humboldt-Universität verfolgte 2004 mit dem Lehrstuhl eines Junior-Professors das Ziel, die Verlinkung im WWW besser zu verstehen. Dazu wurde das Open-Source-Projekt Apache Nutch eingesetzt – ein Projekt, das sich auf die Fahnen geschrieben hatte, die Basis für eine internationale Suchmaschine quelloffen zu entwickeln.

Google war da schon eine mächtige Instanz. Warum versuchte man also, das noch einmal als Open-Source-Projekt zu implementieren?

Lucene entwickelte sich als Suchma­schine für Anwendungsfälle wie „ich brauche auf meiner Website eine Suche“ oder „ich brauche für meinen Kundenkatalog eine Suche“. Daraus entwickelte sich mit einem Crawler, der Link-Analyse usw. eine allgemein verwendbare Internetsuche. Etwa gleichzeitig publizierte Google
zu den Themen MapReduce und dem „Google Distributed File System“. Diese Konzepte wurden innerhalb von Nutch als Nutch-Distributed-Filesystem und als Nutch-MapReduce-Layer nachimplementiert.

Dann wurden Entwickler bei Yahoo, die an ähnlichen Systemen arbeiteten, darauf aufmerksam. Anstatt allein inhouse weiterzuentwickeln, wurden Nutch-Leute bei Yahoo angeheuert. In der Folge wurde das Projekt unter der Apache Software Foundation weiterentwickelt. Später stiegen auch Unternehmen wie Cloudera ein. Aus diesem Projekt entstand dann die heute verbreitete Apache-Hadoop-Soft­ware.

„Einer der größten Vorteile beim Einsatz von Open-Source- Komponenten besteht darin, dass nicht nur der Sourcecode öffentlich ist, sondern die gesamte Diskussion“

Wie viele Personen haben daran mitgearbeitet?

Das ging los mit drei, fünf, sieben Leuten. Heute ist das ein großes internationales Team. Als ich an der Uni war, habe ich die dabei entstandenen Open-Source-Produkte selbst genutzt und war auf den Mailinglisten. Einer der größten Vorteile beim Einsatz von Open-Source-Komponenten besteht darin, dass nicht nur der Sourcecode öffentlich ist, sondern die gesamte Diskussion. Design, Nutzerfragen und die Roadmap werden öffentlich diskutiert und es wird öffentlich darüber entschieden.

Ist diese öffentliche Arbeitsweise Bestandteil der Apache Software Foundation?

Bei Apache wird das durch den sogenannten „Apache-Way” gelebt. Es gibt andere Open-Source-Projekte, bei denen das nicht ganz so offen gehandhabt wird. Das sind meistens diejenigen, die von Unternehmen getrieben werden. Die Apache Software Foundation, aber auch die Eclipse Foundation oder die Linux Foundation haben ähnliche Prinzipien bezüglich der offenen Entwicklung von Projekten. Das Ziel eines Open-Source-Projekts ist zu wachsen. Daher ist es gewollt, Außenstehende zu Mitentwicklern zu machen, indem sie zugucken und später einfach reinspringen können.

Offenheit ist also ein Hilfsmittel, um neue Helfer anzuwerben?

Bei Apache ist das Einladen anderer Aktiver einer der Grundwerte. Um das zu verstehen, muss man wissen, wo Apache als Foundation herkommt. Die Apache Software Foundation wird dieses Jahr 20 Jahre alt. Als erstes Produkt gab es den Apache-Webserver, der an nur einer Universität entwickelt wurde. Als der bereits eine gute Verbreitung erreicht hatte, wurde die Förderung für das Projekt eingestellt. Die Nutzer des Webservers standen in diesem Moment vor der Herausforderung, wie es weiter geht. Damals entschieden alle, das Projekt gemeinsam weiterzuentwickeln, weil sie das Produkt brauchten.

Darauf ist der Apache-Way optimiert: Jeder, der partizipiert, braucht das Produkt und gewinnt durch Mitmachen an Einfluss im Projekt. Vendor-neutral heißt dabei nicht, dass Projekte, die nur von einem Unternehmen getrieben werden, als dysfunktional gelten. Es bedeutet vielmehr, dass ein Einsteigen weiterer Interessierter jederzeit möglich ist.

Später einzusteigen, soll leicht gemacht werden …

Genau! Ziel ist, keinen Single Point of Failure in einem Projekt zu haben, sondern die Aufgaben entsprechend zu verteilen. Mein eigener Weg in das Apache-Projekt war recht typisch: Anfangs nutzte ich die Software und las auf den Mailinglisten des Projekts mit. Irgendwann fing ich an, Nutzerfragen zu beantworten, die Dokumentation zu verbessern und Patches einzureichen. Je wertvoller meine Beiträge wurden, desto mehr Einfluss erlangte ich.

Wie wird das formalisiert?

Das sind kulturelle Werte in der Apache Software Foundation. Das ist eine wiederkehrende Diskussion, insbesondere dort, wo Projekte von einem Hersteller dominiert werden. Dort kommt es zu harten Diskussionen, weil Ungleichgewichte zwischen bezahlten Full-Time-Contributoren und Part-Time- oder gelegentlichen Contributoren ausgeglichen werden müssen.

Abb. 1

„Die Apache Software Foundation ist vergleichbar einem gemeinnützigen Verein“

Wie ist die Foundation strukturiert?

In der Apache Software Foundation gibt es einige Hundert Projekte. Als Software­entwickler bist du fast immer ein Nutzer, denn irgendeines der Produkte verwendest du, wie Apache Maven, Groovy, Tomcat, Kafka, Hadoop usw. Wenn du etwas beiträgst, wirst du automatisch Contributor. Und wenn du lange genug bei einem Projekt mitmachst, bekommst du irgendwann Commit-Rechte.

Die nächste Stufe wäre dann Mitglied im Project Management Committee (PMC). Das sind die Verantwortlichen für rechtlich und sicherheitstechnisch einwandfreie Releases. Ein Projekt braucht mindestens drei PMC-Member, um einen Release zu publizieren. Außerdem entscheidet das PMC, welche Personen als nächste Committer eingeladen werden. Wenn du aktiv in mehreren Projekten bist, wirst du irgendwann zu einem Mitglied der Apache Software Foundation.

Die ASF hat eine 501(c)(3)-US-Steuerbefreiung, ist also eine Charity, ähnlich einem gemeinnützigen Verein. Die Mitglieder zahlen keine Beiträge, sondern tragen durch Mitarbeit bei.

„Die etwa 700 Mitglieder sind weltweit verstreut“

Und wer entscheidet darüber?

Es gibt ein jährliches Treffen aller etwa 700 Mitglieder. Die Mitglieder sind weltweit verstreut. Es ist also kein Face-to-Face-Meeting, sondern ein IRC (Internet Relay Chat) geführtes Meeting mit einem digitalen Abstimmungs-Tool dahinter. Bei diesen Treffen schlagen existierende Mitglieder neue vor und es wird dann per Abstimmung über die Aufnahme entschieden.

Spannend. Keine Videokonferenz, sondern ein Chat mit 700 Menschen?

Ja, denn technisch wäre eine Videokonferenz mit 700 Teilnehmern unmöglich. Selbst das Aufsetzen des IRC mit so vielen Teilnehmern ist eine technische Herausforderung. Das Meeting läuft über drei Tage. Am ersten Tag ab 19:30 Uhr mitteleuropäischer Zeit wählen sich die Mitglieder ein. Es werden ein Drittel aller Mitglieder gebraucht, um die Versammlung zu starten. Das ist der Kick-off für die Wahl-Tage. Dann haben die Mitglieder drei Tage lang Zeit, asynchron über ein Webinterface abzustimmen.

Worüber wird abgestimmt?

Darüber, wer als neues Mitglied aufgenommen wird und darüber, wer über die nächste Periode von 12 Monaten Teil unseres Board-of-Directors wird. Die neun Direktoren der Apache Software Foundation rekrutieren sich aus den Mitgliedern und werden in der Versammlung vorgeschlagen und gewählt.

Ein komplett asynchrones, drei Tage dauerndes Vereinstreffen mit 700 Leuten. Werden die Direktoren bezahlt?

Die Foundation selbst bezahlt die Direktoren nicht. Es gibt aber welche, die von ihrem Arbeitgeber dafür Zeit zur Verfügung gestellt bekommen, und es gibt ebenso welche, die das ehrenamtlich nebenbei machen. Die Foundation selbst bezahlt nur sehr wenige Personen, dazu gehören die Verantwortlichen für Infrastruktur und Pressearbeit sowie eine Buchhaltungsfirma.

Wie finanziert sich die ASF?

Nur über Spenden, nicht über Mitgliedsbeiträge. Du kannst als Firma Geld in die Foundation stecken. Über die Mittelverwendung entscheiden die Direktoren bei der Aufstellung des Jahresbudgets.

Wie viele Personen machen bei der ASF neben den Mitgliedern mit?

Es gibt 7000 Committer mit Schreibzugriff und ungefähr 70.000 Contributoren, die ihre Beiträge, beispielsweise als Patches oder Pull-requests, bereitstellen.

Damit habt ihr mehr Mitarbeiter als beispielsweise die RWE AG oder Arvato ...

Ich wette mit dir, dass Leute von Arvato dort mitarbeiten, genauso wie vermutlich von Volkswagen oder SAP.

Und wie viele Menschen nutzen die Produkte?

Genau wissen wir das natürlich nicht, aber potenziell alle fast 4 Milliarden Internet-Benutzer weltweit. Wenn man die Statistiken zur Verbreitung der Projekte durchliest, merkt man, wie verbreitet die Software ist. Beispielsweise Spark und Cassandra. Das sind Technologien für extrem schnelle In-Memory-Datenanalyse, die beispielsweise von Facebook, Twitter, GitHub oder Microsoft genutzt werden.

„Nicht mehr unterstützte Projekte packen wir in den Dachboden“

Wie geht die Foundation mit Legacy-Software um?

Wenn du auf GitHub schaust, dann gibt es dort eine lange Reihe von ASF-Projekten, aber wirklich aktiv ist nur ein kleiner Prozentsatz. Wir wollen, dass das Project Management Committee mindestens drei aktive Personen umfasst. Die Apache-Philosophie ist, dass die Nutzer selbst dafür sorgen, dass das, was sie einsetzen, weiterentwickelt wird. Fehlt also ein Mitglied im PMC, so wird das veröffentlicht und es wird versucht, die Position aus den Reihen der Committer und Contributoren zu füllen. Projekte, bei denen das nicht gelingt, gelten als nicht mehr unterstützt und somit als Legacy. Die Software solcher Projekte packen wir in den sogenannten Attic, also den Dachboden. Die Gründe dafür können unterschiedlich sein. Seltener, dass ein Projekt zu Ende entwickelt ist, häufiger, dass ein Standard nicht mehr verwendet wird.

Wie stellt die ASF sicher, dass Projekte von Anfang an überlebensfähig sind?

Jedes Projekt bei Apache durchläuft zu Beginn seiner Lebenszeit eine Inkubator-Phase, in der organisatorische Dinge eingeübt werden und in der geschaut wird, ob das Projekt an sich überlebensfähig ist. Erst wenn ein Projekt ein gewisses Set an Kriterien erfüllt hat, unter anderem ein erstes Release herausgegeben hat, wenn es gezeigt hat, dass neue Leute in das Projekt hineinkommen, wenn es ein regelmäßiges Reporting zum Projekt gibt, dann endet die Zeit im Inkubator.

Gibt es sonst noch Gründe mitzumachen?

Wenn man beispielsweise als Student Praxiserfahrung sammeln möchte, so ist das ein guter Weg. Das gilt aber auch für praxiserfahrene Entwickler. Normalerweise hat man als Softwareentwickler nur den Einblick in die eigene Firma. Die Mitarbeit an einem Open-Source-Projekt ermöglicht einen neuen Blick auf die Themen Build, Testing oder Dokumentation von Software. Aber auch Dinge wie „Mitarbeiterführung” oder das, was im Unternehmen oft „laterale Führung” heißt, kann man in einem Open-Source-Projekt gut lernen. Denn dort kann man nicht einfach etwas anweisen, damit vergrault man unter Umständen die Experten. Über das Mitmachen in einem Open-Source-Projekt kommt man auch in Kontakt mit Menschen, die in anderen Firmen arbeiten, und erhält somit Einblicke in die Arbeitsweisen anderer Firmen.

Und was macht es für Unternehmen attraktiv, bei der ASF mitzumachen?

Zunächst Employer-Branding. So kann ich zeigen, unsere Mitarbeiter sind dort aktiv, und das ist attraktiv. Außerdem kann die Firma so einfach lernen und die erfolgreichen Arbeitsweisen aus Open-Source-Projekten adaptieren. Dazu gehört ganz praktisch die Art der Kommunikation, aber auch das Erlernen von Führungsqualitäten und interkultureller und standortübergreifender Zusammenarbeit mit vielen Entwicklern.

Auch das Auslagern von Software in ein Open-Source-Projekt kann für Firmen interessant sein, weil dadurch im besten Fall auch die Mitwirkung weiterer Experten ermöglicht wird, auch wenn diese dann gar nicht auf der Lohnliste sind. Weiterhin kann die Verfügbarkeit einer Open-Source-Implementierung entscheidend zur Verbreitung neuer Standards beitragen. So hat beispielsweise die BBC einen Videostandard als Open Source zur Verfügung gestellt.

Open Source ist eben kein Black-Box-Produkt, sondern jeder Nutzer kann in alles hineinschauen und davon lernen. Open-Source-Software und die dafür zum Management benötigten Kommunikationsstrukturen sind Quellen guter Produkte und von Know-how für Unternehmen.

Isabel, vielen Dank für das Gespräch.

Abb. 2

. . .

Author Image
Zu Inhalten

Johannes Mainusch ist Berater für Unternehmen, die Bedarf im Bereich IT, Architektur und agiles Management haben. Dr. Mainusch ist seit 2012 Mitglied der IT Spektrum-Redaktion.

Author Image
Zu Inhalten
Mitgründerin der Apache Mahout Platform für Machine Learning, Motto: Die wahren Lebenskünstler sind bereits glücklich, wenn sie nicht unglücklich sind (Jean Anouilh), Alter: 38, Wohnort: Berlin

Artikel teilen