Open Source im professionellen Einsatz
Linux-Magazin 08/2015
© sergeisimonov, 123RF

© sergeisimonov, 123RF

Apache Software Foundation

Digitaler Brutkasten

Keine Büros, keine Gebäude: Die Apache Software Foundation ist nahezu unsichtbar. Doch brütet sie Hunderte von Software-Großprojekten aus, bringt Tausende Entwickler zusammen. Und all das, ohne im Chaos zu enden und auf Innovation zu verzichten. Wie macht sie das? Ein Streifzug.

752

Apache-Projekte wie Hadoop [1], Cassandra [2], Tomcat [3] und Spark [4] erfreuen sich in den Rechenzentren seit Jahren größter Beliebtheit. Den Grundstein der Apache Software Foundation (ASF, [5]), deren Projekte der Schwerpunkt in diesem Linux-Magazin beleuchtet, legte aber ein schlanker, kleiner HTTP-Server [6]. Ihn kann man im Softwarebereich wohl als äußerst populären Dauerbrenner bezeichnen (siehe Artikel im Schwerpunkt).

Vorläufer des Apache-Servers war der HTTPd der NCSA [7]. Wem die Abkürzung nichts sagt: Vom National Center for Supercomputing Applications stammt der wohl bekannteste der frühen Browser: Mosaic. Rob McCool arbeitete Anfang der 90er in der Institution und erhielt den Auftrag, einen Webserver zu entwickeln, der nicht so komplex ist wie der damals bevorzugt eingesetzte vom CERN. Den Code suchte er in dem noch jungen Internet zusammen.

Als McCool das NCSA verließ, um einen neuen Job anzutreten, wurde der Server ziemlich vernachlässigt. Lediglich ein paar Nutzer schickten noch eigene Patches, um ihn am Leben zu erhalten. Brian Behlendorf sammelt diese und so entstand "A patchy Server". Unklar bleibt, ob sich Apache nach diesem Wortspiel benannt hat oder nach der nordamerikanischen Stammesgruppe.

Steiler Aufstieg

Im April 1995 veröffentlichte die selbsternannte Apache Group, die aus acht Entwicklern bestand, eine erste Version 0.6.2 des Servers, im Dezember 1995 erschien die Version 1.0. Im Laufe eines Jahres überflügelten die Apache-Nutzerzahlen bereits die des NCSA HTTPd. Im Zuge dieser Entwicklung gründeten die Apachen 1999 die Apache Software Foundation (ASF). Da waren bereits weitere Softwareprojekte im Apache-Umfeld entstanden, die sich etwa um die Perl- oder PHP-Module kümmerten.

Heute verwaltet die ASF 164 Toplevel-Projekte, mit 110 Subprojekten. Daneben gibt es 35 als Podlings bezeichnete Nachwuchsprojekte im Apache Incubator [8] sowie 39 Initiativen im Apache Lab [9]. Insgesamt sind das 348 Open-Source-Initiativen. Monatlich kommen durchschnittlich zwei neue Projekt hinzu (Abbildung 1), insgesamt zählt die ASF 4700 Codelieferanten [10].

Abbildung 1: Sowohl bei den Toplevel-Projekten als auch im Inkubator zeigt der Trend nach oben. Die Schwankungen im Inkubator ergeben sich, weil reife Projekte in die Toplevel-Liga wechseln.

Mitte der 90er entstand auch die Apache License 1.0, die damals noch verlangte, die Apache Group in Werbematerialien zu nennen. Der Passus fiel später weg. Die aktuelle Version 2.0 ist zur GPLv3 kompatibel, wenn ein Projekt Apache-2.0-Code in sein GPLv3-Projekt integriert. Umgekehrt funktioniert es nicht. Mehr zu dieser Problematik liefert [11].

Auf die Bühne

Die Apache Software Foundation bezeichnet ihre Organisationsform als Meritokratie. Grob vereinfacht heißt dies: Wer viel tut, hat auch viel zu sagen. Bestehende Mitglieder stimmen über die Aufnahme neuer Mitglieder ab, die Details regelt eine Satzung [12].

Die Apache-Projekte durchlaufen mehrere vorbestimmte Stadien (Abbildung 2). Wer sein Projekt in die Obhut der ASF übergeben hat, landet damit zunächst im Apache Incubator (Brutkasten, [8]). Stellt sich heraus, dass der Code darin aufblüht und sich eine Community um das Projekt bildet, wird es zum Toplevel-Projekt [13] und steht gleichwertig neben den anfangs genannten.

Abbildung 2: Firmen wie Google, Facebook und Twitter gehören häufig sowohl zu den Usern als auch zu den Entwicklern im Entwicklungsmodell der ASF.

Um Innovationen anzukurbeln, bietet die ASF ihren Mitgliedern zugleich die Möglichkeit, mit Code zu experimentieren. Die dazugehörige Infrastruktur stellen die Apache Labs [9] bereit. Ist eines der Experimente erfolgreich, landet es im Inkubator und folgt dem weiter oben vorgezeichneten Weg. Selbst an das Aufräumen denkt die Foundation: Nicht mehr betreute oder aktuelle Projekte landen auf dem Attic (Dachboden, [14]). Der Code bleibt so zugänglich und lässt sich wiederbeleben, falls sich Interessenten finden.

Wer sich aber für seinen nicht mehr betreuten Code ein zweites Leben im Apache-Projekt erhofft, missversteht das System. Die ASF akzeptiert Code nur, wenn dessen Besitzer einige Regeln beachtet und bestimmte Voraussetzungen erfüllt. Zu diesen gehören:

  • Es muss sich um lauffähigen Code handeln. Das begründet die ASF damit, dass sich eine Community erst dann bilde, wenn der Code funktioniere. Stehe am Anfang zudem eine langwierige Designphase, würde es häufig zur Fragmentierung der Community kommen.
  • Der Codebesitzer muss das Copyright der Software und das darin enthaltene geistige Eigentum im Rahmen eines Software Grant Agreement [15] der Apache-Stiftung übergeben. Nur dann können die User sicher sein, nicht irgendwann in einem Lock-in zu landen.
  • Nicht zuletzt braucht das Projekt einen Sponsor innerhalb der ASF oder einen Officer. Diese Person agiert als Mentor, hilft dem Projekt und hält Kontakt zum Project Management Committee (PMC) des Projekts.

Die ASF glaubt an Hüte, also an Verantwortliche, die "den Hut aufhaben": Für jedes Projekt gibt es nicht nur ein PMC, sondern auch ein Mitglied der Foundation, das als offizieller Ansprechpartner für das Projekt auftritt [16].

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 3 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.