Meinung: Open Source bedeutet Anarchie, aber nicht Chaos
Meinung: Open Source bedeutet Anarchie, aber nicht Chaos. Erfolgreiche Open-Source-Projekte funktionieren nach einem System des Selbstmanagements, bei dem jede Mitwirkung freiwillig, aber doch koordiniert erfolgt. Neue Code-Beiträge werden eingehend überprüft und untersucht. In einem gewissen Sinn sind die ...

Meinung: Open Source bedeutet Anarchie, aber nicht Chaos
Erfolgreiche Open-Source-Projekte funktionieren nach einem System des Selbstmanagements, bei dem jede Mitwirkung freiwillig, aber doch koordiniert erfolgt. Neue Code-Beiträge werden eingehend überprüft und untersucht. In einem gewissen Sinn sind die Verhältnisse bei quelloffener Software anarchisch. Viele halten Anarchie für ein System ohne jegliche Kontrolle oder für einen Zustand, in dem organisatorische Strukturen völlig fehlen. Das aber wäre Chaos und nicht Anarchie. Würden Open-Source-Projekte nach chaotischen Grundsätzen ablaufen, könnte jeder ohne Begutachtung Programme hinzufügen. Quelloffene Software würde dadurch zu einer Heimstätte für Computer-Kriminelle und miserable Programmierer.
Die meisten Open-Source-Projekte werden von einem einzelnen Individuum in die Welt gesetzt, das die Basis entwickelt, auf der die Software dann aufgebaut werden kann. Ob ein Projekt gedeiht oder eingeht hängt davon ab, ob der Initiator Mitwirkende findet oder nicht. Alle Open-Source-Projekte haben einen Leiter (Leader), bei dem es sich häufig, aber nicht immer um den Initiator handelt. Zunächst ist er die einzige Person, die Änderungen an den Programmen vornimmt. Ist das Projekt erfolgreich, können auch andere Leute Änderungen am Code vorschlagen, aber nur der Leiter kann sie dann in Kraft setzen. Meist wird dies über ein Quellcode-Kontrollsystem sichergestellt, bei dem nur der Leiter über die erforderlichen Berechtigungen verfügt. Da der Leiter großes Interesse daran hat, dass der neue Code auch wirklich gut ist, überprüft er alle Vorschläge sorgfältig. Schließlich ist er in dieser Phase derjenige, der die meiste Arbeit in das Projekt investiert und am meisten zu verlieren hat, wenn die Code-Basis durch schlechte Programme beeinträchtigt wird.
Gegenseitige Unterstützung
In dem Maß, in dem das Projekt wächst, ermöglicht der Leiter anderen den Zugang zum Quellcode-Kontrollsystem und somit Direktbeiträge zum Code. Diese Mitwirkenden werden auch als Committer bezeichnet. Aber auch hier gibt es einen Kontrollmechanismus, der sicherstellt, dass die Committer sich in gleichem Maß für die Qualität des Codes einsetzen wie der Leader. Üblicherweise wird jemand nur zu einem Committer, wenn er über einen langen Zeitraum (normalerweise mehrere Monate) seine technische Fähigkeit und seine moralische Übereinstimmung mit dem Leiter unter Beweis gestellt hat. Beitragende, die ein ungewöhnliches Maß an Engagement gezeigt haben, werden mit Committer-Privilegien belohnt, die ihnen mehr Einfluss über die Richtung des Projekts einräumen. In vielen Fällen werden Mitglieder von den bestehenden Committern zu neuen Committern gewählt. So managt sich das Open-Source-Projekt selbst. Jeder, der sich auf diese Weise qualifiziert, kann zum Wächter der Code-Basis werden.
Bei sehr erfolgreichen Projekten kann sich praktisch kein Programm der intensiven Überprüfung durch die Kollegen des Beitragenden und die Software-Gemeinde allgemein entziehen. Wird ein Stück Software durch einen Committer geändert oder ergänzt, überprüfen das meist andere Committer, um die Qualität sicherzustellen und um den jeweils aktuellen Stand des Systems nachvollziehen zu können. Diese Peer Reviews decken üblicherweise Probleme, sofern vorhanden, sofort auf. Zudem überprüft die Community insgesamt die meisten Code-Änderungen. Bei einem Projekt mit einem Leader und fünf Committern kann es Hunderte, wenn nicht sogar Tausende von Mitgliedern geben, die die Code-Basis regelmäßig herunterladen, laufen lassen und überprüfen. So fungiert die Community als unabhängiger Wachhund von Open-Source-Projekten: ein Aufpasser, der den Code anwendet und davon profitiert und kein Verständnis für schlecht geschriebene Programme oder unsichere Praktiken hat. Auch dies ist eine Art der Selbststeuerung, aber auch ein Prinzip der gegenseitigen Unterstützung und der Wechselseitigkeit.
Ohne Anarchie keine Open-Source-Software
Wenn es denn also ein Kontrollsystem gibt, das für quelloffene Software charakteristisch ist, dann ist es die Anarchie. Es gibt viele Formen der Anarchie. Aber in diesem Fall produziert sie eine Menge Software, die qualitativ hochwertig, beliebt und gut unterstützt ist ? zum Beispiel das Betriebssystem Linux, den Apache-Webserver und den Java-Applikationsserver von JBoss. Quelloffene Software wird üblicherweise anarchisch entwickelt, was aber nichts Schlechtes bedeutet. Es ist nur ein anderer Prozess als der, den die meisten Organisationen gewohnt sind. Die Anarchie ist zwar wenig populär, wenn es darum geht, Staaten zu regieren oder Unternehmen zu führen. Sie ist aber das fundamentale Prinzip, das Open Source ermöglicht hat: Ohne Anarchie im dargelegten Sinn des Wortes gäbe es keine Open-Source-Software.
Richard Monson-Haefel ist Senior Analyst für Application Platform Strategies bei der Marktforschungsfirma Burton Group.