„A Patchy Server” – zehn Jahre Pionierarbeit

Feature | 20. Juni 2005 von admin 0

Brian Behlendorf

Brian Behlendorf

Herr Behlendorf, können Sie uns etwas über die Geschichte des Apache-Webservers erzählen?

Behlendorf: Kurz gesagt: Apache wurde 1995 von einer Gruppe von Webmastern gegründet, die um die Zukunft eines der ersten Webserver, des NCSA-Servers, besorgt waren. Netscape hatte nämlich die Entwickler des NCSA abgeworben. Damit blieb niemand übrig, der die von uns Webmastern eingereichten Bug-Fixes und Verbesserungen einarbeiten konnte.

Als wir uns die Lizenz des NSCA-Servers anschauten, sahen wir, dass es sich hierbei im Grunde um ein „Open Source”-Produkt handelte, noch lange bevor „Open Source“ zu einer Marke oder einem Begriff wurde. Es war uns daher möglich, veränderte Versionen der Software zu verbreiten. Wir entschieden uns dafür, die Zukunft des Webservers selbst in die Hände zu nehmen und arbeiteten von da an die Fehlerkorrekturen (Patches) in eine neue Software ein. Diesen neuen Server nannten wir „Apache” – der vielen „Patches“ wegen, aus denen er zusammengeflickt war. Wir fanden, dass der Name unsere Einstellung als „Rebellen“ sehr gut widerspiegelt.
Nach drei Jahren unglaublichen Wachstums erkannten wir 1998, dass wir rechtliche und organisatorische Strukturen brauchten. Unser Ziel war es, das Internet Protocol (IP) und die Zukunft unseres Projekts in die Hände einer gemeinnützigen Gesellschaft zu legen. Daher wurde die Apache Software Foundation (ASF) gegründet. Die Führungs- und Entscheidungsstruktur der ASF sollte es ermöglichen, rasch viele neue Projekte an den Start zu bringen – bislang immerhin 25 an der Zahl.

Worin besteht für Sie die Zukunft der ASF?

Behlendorf: Wir versuchen, zu „skalieren”. Darunter verstehen wir die Fähigkeit, echte, facettenreiche und von einem Konsens getriebene Communities heranzuziehen. Gleichzeitig arbeiten wir mit anderen Open-Source-Gruppen zusammen. Wir wollen beispielsweise unsere Lizenzen kompatibler machen und eine Patentpolitik definieren.

Angaben von Netcraft zufolge erreichte der Apache-Server im Juni 2000 10 Millionen Websites, im November 2001 20 Millionen und im November 2003 30 Millionen. Was ist Ihrer Meinung nach der Grund für diesen Erfolg?

Behlendorf: Der Server war das richtige Produkt zur richtigen Zeit. Das Web befand sich gerade im Aufbau, als wir mit Apache loslegten. Von Anfang an lag unser Fokus auf einem qualitativ hochwertigen Server für die Geschäftswelt. Schließlich waren wir alle an der ersten Welle des Web-Business beteiligt. Wir erkannten auch die Bedeutung eines umfangreichen Angebots für das Hosten zahlreicher Websites, die auf Massen-Hardware laufen. Damit bedienten sich immer mehr Menschen unserer Software, weil sie sahen, dass eine Menge anderer Leute sie verwendeten. Je mehr Leute die Software verwendeten, desto mehr Entwickler gab es, desto besser wurde die Software.

Wie würden Sie als Mitbegründer die Zusammenarbeit innerhalb der Apache Software Foundation beschreiben?

Behlendorf: Die ASF hat über 140 „Mitglieder“ – darunter Entwickler und Teilnehmer, die von den Mitgliedern eingeladen wurden. Sie wählen den Vorstand. Dieser wiederum wählt den Vorsitzenden, den Generaldirektor, den Schriftführer und den Kassenwart. Für die Kommunikation und Koordination verwenden die Mitglieder der ASF hauptsächlich Mailing-Listen. Mindestens einmal im Jahr findet im Rahmen der Apache-Konferenz eine inoffizielle Mitgliederversammlung statt. Darüber hinaus gibt es jedes Jahr ein offizielles „Treffen“, das über Internet Relay Chat funktioniert und bei dem die neuen Mitglieder gewählt werden. Außerdem diskutieren die Mitglieder über die Politik der Organisation, über neue Projekte und Themen der Infrastruktur – aber auch darüber, wo man ein gutes Bier trinken kann, wenn man in einer fremden Stadt auf Geschäftsreise ist.

Wo liegt Ihrer Meinung nach Potenzial für ein weiteres Wachstum der ASF?

Behlendorf: Der Markt für Webserver ist heute ausgereift – die Marktanteile der verschiedenen Server werden sich in den nächsten fünf Jahren nicht sonderlich verändern. Beeindruckend war und ist das Wachstum anderer Produkte innerhalb der ASF. Einige davon sind bekannt, wie SpamAssassin und Struts, andere wiederum machen langsam erst von sich reden, beispielsweise Derby und Geronimo. Wir gehen jedoch davon aus, dass auch diese Produkte einmal so beliebt sein werden wie der Webserver.

Mit Geronimo wollen wir den von der ASF lizenzierten J2EE Application Server zur Verfügung stellen. Geronimo bietet Support für J2EE-Features, wie etwa JTA, JACC, Connection Pooling und Web-Services. Derby ist ein so genanntes „Incubator Project“ der ASF. Die Derby-Datenbanktechnologie verwendet Java als Programmiersprache und unterstützt Plattformen wie J2ME, J2SE und J2EE. Derby benötigt weder Datenbankverwaltung noch Ressourcenmanagement. Zu den Leistungsmerkmalen zählen signierte JAR-Dateien, optionale LDAP und Benutzerautorisierung. Geronimo wird vorkonfiguriert geliefert mit einer Datenquelle, der Datenbank Derby, in der interne Daten gespeichert werden.

Was sind die Stärken einer erfolgreichen Open-Source-Software?

Behlendorf: Erfolgreiche Open-Source-Software-Projekte haben eine Menge gemeinsamer Merkmale. Sie werden öffentlich und transparent von einer heterogenen Entwicklergemeinschaft erarbeitet, die ihre Entscheidungen auf der Basis von Vertrauen und Konsens fällt. Neue Entwickler sind immer willkommen und erhalten aktive Hilfe beim Lernprozess. Erfolgreiche Open-Source-Projekte beruhen auf dem Konzept der Modularität, damit sich die Software einfacher in andere Produkte implementieren lässt, gleichgültig ob es sich dabei um Open-Source-Software oder kommerzielle Produkte handelt.

Wir erwarten auch, dass sich mehrere Provider um den Support oder kundenspezifische Anpassung kümmern. Dadurch soll gewährleistet werden, dass sich die Entwickler langfristig an den Code halten. Gleichzeitig hoffen wir, dass es aktive, nicht-kommerzielle Entwickler gibt, die der Herausforderung oder des Nervenkitzels wegen an dem Projekt mitarbeiten – oder einfach, um neue Ideen auszuprobieren. In einer Gemeinschaft lassen sich diese Entwickler in puncto Kreativität häufig auf größere Risiken ein, da sie weniger zu verlieren haben, falls ein Experiment misslingt. Die Idee, Open-Source-Projekte für kommerzielle und nicht-kommerzielle Entwickler offen zu halten und damit (für gewöhnlich) einen goldenen Mittelweg zwischen Innovation und Stabilität zu finden, ist eine grundlegende Voraussetzung für den Erfolg der Software.

Kürzlich haben Sie angemerkt, dass die „Größe der Software von Zusammenarbeit, Vertrauen und Transparenz abhängt”. Können Sie diese Aussage näher erläutern und erklären, wie sie zur Strategie von CollabNet passt?

Behlendorf: Die meisten Überlegungen der vergangenen 20 Jahre im Bereich Softwareentwicklung bezogen sich auf die Mechanisierung der zugehörigen Prozesse. Nur formale Prozesse und minutiöse Vorausplanung – so die gängige Idee – bringen den besten Code in der vorgesehenen Zeit hervor. Dabei wurde aus den Augen verloren, dass auch die Entwicklung von Software ein Handwerk ist, das Menschen mit individuellen Stärken ausüben. Diese Menschen verlangen nach Anerkennung und streben nach Verantwortung. Außerdem lässt sich Kreativität nicht immer in einen Zeitplan pressen. Der Erfolg des Open-Source-Ansatzes ist der Tatsache zu verdanken, dass die Vorausplanung teils über Bord geworfen wurde und Zeitpläne durch opportunistische Zielsetzungen und einen an Teamarbeit ausgerichteten Ansatz ersetzt wurden. Meiner Meinung nach spiegelt eine Software, die im Team entwickelt wird, die Fähigkeit zur Zusammenarbeit, das gegenseitigen Vertrauen und die Offenheit der Arbeitsabläufe gegenüber den Teammitgliedern und den Anwendern wieder. Diese Faktoren halte ich für wichtiger als einen starreren Arbeitsablauf bei der Entwicklung der Software.

CollabNet hat es sich zur Aufgabe gemacht herauszufinden, wie Open-Source-Communities arbeiten, um dieses „verlorene“ Konzept zurückzugewinnen und es in die Werkzeuge zur Softwareentwicklung einzubinden, die wir unseren Kunden zur Verfügung stellen. Zu unseren eher sichtbaren Verpflichtungen zählen Open-Source-Communities wie OpenOffice, TianoCore oder Bioforge. Doch ein Großteil unserer Aktivitäten liegt darin, unsere Werkzeuge bei signifikanten Softwareentwicklungen in großen und mittleren Unternehmen einzusetzen. Wir sind der Ansicht, dass es einen Weg gibt, die Vorteile von Zusammenarbeit und Transparenz in die Arbeitsabläufe zu integrieren, mit denen Unternehmen für Vorausplanung und Qualität ihrer Software sorgen. Die Einbindung dieser Merkmale in unsere Entwicklungswerkzeuge bringt einen Wettbewerbsvorteil und ist Teil des Werts, den wir unseren Kunden bieten.

Welche Auswirkungen hatten diesbezügliche Apache-Projekte, wie mod_perl oder Tomcat?

Behlendorf: Wir haben dazu beigetragen, den Stand der Technik im Bereich der Open-Source-Technologien für Unternehmensanwendungen voranzubringen, indem eine komplexe Umgebung von Systemen und Komponenten für Entwickler zur Verfügung gestellt wurde. Meiner Ansicht nach hat die Branche für Web-Software (von Managed-Service-Providern über On-demand-Modelle bis hin zu den neuen Web-Services) ihr beeindruckendes Wachstum zu einem wesentlichen Teil der Funktionalität dieser verfügbaren Werkzeuge zu verdanken – und dem von Apache errichteten „Open Governance Model“, mit dem diese Technologie vorangetrieben werden soll.

Wie stehen Sie zu Open-Source-Projekten, die Verkäufer-unabhängig sind und nicht der Kontrolle einer bestimmten Gruppe oder einer Einzelperson unterliegen?

Behlendorf: Meiner Meinung nach sollten Open-Source-Communities über eine Führungsstruktur verfügen, damit sie das Ausscheiden eines einzelnen, wichtigen Entwicklers oder eines Sponsoren überlebt. Open-Source-Lizenzen selbst bieten trotzdem eine Menge Spielraum. Geht beispielsweise der Gründer, bleibt immer noch das Recht auf Aufspaltung und Neustarts des Projekts. Genauso hat es ja Apache schließlich mit NCSA gemacht. Oft führt eine solche Vorgehensweise jedoch zu einem tiefen Bruch. Daher ist es besser, wenn eine Führungsstruktur existiert, die eine einwandfreie Übergabe gewährleistet und somit für Kontinuität sorgt.

Leave a Reply