Die Kathedrale und der Basar

Die Kathedrale und der Basar

Die Kathedrale und der Basar (engl. „The Cathedral and the Bazaar“) lautet der Titel eines bekannten Essays über quelloffene Software. Verfasst wurde es von Eric S. Raymond, der es erstmals auf dem vierten Internationalen Linux-Kongress am 22. Mai 1997 in Würzburg öffentlich vortrug. Er beschreibt darin die Vor- und Nachteile der im Open-Source-Bereich inzwischen weit verbreiteten Entwicklungsmethode des Basars gegenüber der zuvor gebräuchlichen Methode, die er Kathedrale nennt.

Inhaltsverzeichnis

Kathedrale

Beim Kathedralen-Modell wird der Quellcode eines Programmes gar nicht oder nur mit jeder neuen Software-Veröffentlichung für die Öffentlichkeit verfügbar gemacht. In den Entwicklungszeiträumen zwischen den Veröffentlichungen kann neuer Quellcode ausschließlich von einer einzigen Entwicklergruppe oder einem einzelnen Entwickler programmiert werden, die/der typischerweise bei einem Softwarehersteller angestellt ist. In diesem Fall wird der Quellcode oft als Betriebsgeheimnis behandelt und gar nicht veröffentlicht. Die Kathedrale symbolisiert die herkömmliche Entwicklungsweise: Ein Chef überwacht ein Team, welches stufenweise wie eine Pyramide aufgebaut ist. Es gibt einen Bauplan, und wenn dieser erfüllt ist, ist das Gebäude fertig.

Basar

Beim Basar-Modell ist der Quellcode dagegen in jedem Stadium über das Internet einsehbar. Die Entwicklung vieler Open-Source-Programme folgt diesem Schema. Dieses Modell hat sich als erfolgreicher als das Kathedralen-Modell erwiesen: Auf einem Basar bieten viele Menschen ihre Waren feil, ohne dass einer mächtiger als der andere wäre. So werden auch große Projekte koordiniert; das beste Beispiel ist der Linux-Kernel, dessen Maintainer Linus Torvalds ist. Es gibt meistens eine Person, die darauf achtet, dass das Marktrecht eingehalten wird. Zudem ist der Basar aus vielen kleinen Teilen aufgebaut – ist einer der Stände einmal nicht auf dem Basar vertreten, so ist dieser trotzdem vollständig.

Übertragen auf die Software-Entwicklung sind die Händler, welche ihre Waren feilbieten, die Programmierer, die neue Programmteile hinzufügen oder Verbesserungen vornehmen und in das Projekt integrieren wollen; der Wächter über das Marktrecht wiederum entspricht dem Maintainer eines Software-Projekts. Was eigentlich in einem heillosen Durcheinander enden müsste, wächst durch Selbstorganisation zu einer großen Software heran.

Man kann dabei niemals sagen, die Software sei „fertig“. Raymond spricht deshalb davon, dass die Softwareindustrie keine Fertigungs-, sondern eine Dienstleistungsindustrie sei.

Entwicklungsmodell

Im Essay sind 19 Richtlinien enthalten, wie gute OpenSource Software programmiert werden kann:

  1. Jede gute Software wird von einem Entwickler geschrieben, der ein persönliches Problem lösen will.
  2. Gute Programmierer wissen, was sie schreiben müssen. Brillante wissen, was sie neuschreiben müssen (und was sie wiederverwenden können).
  3. Plane, eins wegzuwerfen; du wirst es sowieso tun.
  4. Wenn du die richtige Einstellung hast, werden dich interessante Probleme finden.
  5. Wenn du das Interesse an einem Programm verlierst, ist es deine Pflicht, dieses einem kompetenten Nachfolger zu übergeben.
  6. Wenn du deine Benutzer als Mitprogrammierer betrachtest, ist dies der einfachste Weg zu schneller Verbesserung und effizientem Debugging.
  7. Veröffentliche früh. Veröffentliche häufig. Und höre auf die Benutzer.
  8. Mit einer hinreichend großen Gruppe von Betatestern und Mitentwicklern, wird fast jedes Problem schnell erkannt und die Lösung von jemandem gefunden.
  9. Schlaue Datenstrukturen und einfacher Code funktioniert viel besser als anders herum.
  10. Wenn du deine Betatester wie deine wertvollste Ressource behandelst, werden sie dies auch werden.
  11. Fast so gut wie eigene gute Ideen zu haben, ist es, gute Ideen von den Benutzern zu erkennen. Manchmal ist letzteres besser.
  12. Meist entstehen die brillanten Lösungen aus der Erkenntnis, dass das Problem falsch verstanden wurde.
  13. Perfektion (im Design) ist nicht erreicht, wenn man nichts mehr hinzufügen kann, sondern wenn nichts mehr entfernt werden kann.
  14. Jedes Tool soll so funktionieren, wie erwartet. Aber ein wirklich gutes Tool führt zu Verwendungszwecken, an die du niemals gedacht hättest.
  15. Wenn du Schnittstellencode schreibst, verhindere um jeden Preis, den Datenstrom zu verändern – und verwirf nur etwas, wenn dies der Empfänger verlangt.
  16. Wenn deine Programmiersprache überhaupt nicht Turing-vollständig ist, kann syntaktischer Zucker dein Freund sein.
  17. Ein Sicherheitssystem ist nur so sicher wie sein Geheimnis. Vermeide Pseudogeheimnisse.
  18. Um ein interessantes Problem zu lösen, suche eines.
  19. Mit genügend guter Kommunikation, wie über das Internet, und Führung ohne Zwang sind viele Köpfe immer besser als einer.

Siehe auch

Weblinks


Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Der Rote Platz — Roter Platz, Blickrichtung Süd Der Rote Platz bei Nacht …   Deutsch Wikipedia

  • Top-down und Bottom-up — Als Top down (engl. ‚von oben nach unten‘) und Bottom up (engl. ,von unten nach oben‘) werden zwei entgegengesetzte Arbeitsrichtungen eines Modellierungs Prozesses bezeichnet, die in verschiedenen Sinnzusammenhängen für Analyse oder… …   Deutsch Wikipedia

  • Liste der Stadtteile von Istanbul — Die größte Stadt der Türkei, Istanbul, erstreckt sich über etwa 50 Kilometer in west östlicher wie in nord südlicher Richtung und wird durch den Bosporus in eine europäische und eine asiatische Seite geteilt. Das alte, im Süden der europäischen… …   Deutsch Wikipedia

  • The Cathedral and the Bazaar — Die Kathedrale und der Basar (engl. „The Cathedral and the Bazaar“) lautet der Titel des wohl populärsten Essays über Open Source. Verfasst wurde es von Eric S. Raymond, der es erstmals auf dem vierten Internationalen Linux Kongress am 22. Mai… …   Deutsch Wikipedia

  • Offener Quelltext — Open Source [ˈoʊpən sɔːɹs] (engl.) bzw. quelloffen ist eine Palette von Lizenzen für Software, deren Quelltext öffentlich zugänglich ist und durch die Lizenz Weiterentwicklungen fördert. Open Source Software steht unter einer von der Open Source… …   Deutsch Wikipedia

  • Open-Source — [ˈoʊpən sɔːɹs] (engl.) bzw. quelloffen ist eine Palette von Lizenzen für Software, deren Quelltext öffentlich zugänglich ist und durch die Lizenz Weiterentwicklungen fördert. Open Source Software steht unter einer von der Open Source Initiative… …   Deutsch Wikipedia

  • Open-Source-Bewegung — Open Source [ˈoʊpən sɔːɹs] (engl.) bzw. quelloffen ist eine Palette von Lizenzen für Software, deren Quelltext öffentlich zugänglich ist und durch die Lizenz Weiterentwicklungen fördert. Open Source Software steht unter einer von der Open Source… …   Deutsch Wikipedia

  • Open-Source-Software — Open Source [ˈoʊpən sɔːɹs] (engl.) bzw. quelloffen ist eine Palette von Lizenzen für Software, deren Quelltext öffentlich zugänglich ist und durch die Lizenz Weiterentwicklungen fördert. Open Source Software steht unter einer von der Open Source… …   Deutsch Wikipedia

  • OpenSource — Open Source [ˈoʊpən sɔːɹs] (engl.) bzw. quelloffen ist eine Palette von Lizenzen für Software, deren Quelltext öffentlich zugänglich ist und durch die Lizenz Weiterentwicklungen fördert. Open Source Software steht unter einer von der Open Source… …   Deutsch Wikipedia

  • Open Source Software — Open Source [ˈoʊpən sɔːɹs] (engl.) bzw. quelloffen ist eine Palette von Lizenzen für Software, deren Quelltext öffentlich zugänglich ist und durch die Lizenz Weiterentwicklungen fördert. Open Source Software steht unter einer von der Open Source… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”