next up previous
Nächste Seite: Freie Software Aufwärts: Philosophie freier Software Vorherige Seite: Philosophie freier Software

Open Source

In der Un*x-Welt gab es tradtionell viele unterschiedliche Plattformen, die natürlich nicht binärkompatibel sein konnten. Daher war die natürlichste Art, Software zu verteilen, den Quellcode auszuliefern, anstatt eine große Sammlung von Binaries vorzuhalten. Da Un*x selbst in der Programmiersprache C geschrieben ist, gibt es auf jedem Un*x-System einen C-Compiler. Der Quellcode ist daher in C geschrieben und wird vom Systemverwalter selbst übersetzt. Mit dem Vordringen kommerzieller Interessen in die Un*x-Welt, wurde mit dieser Tradition jedoch gebrochen und jeder Hersteller verkaufte seinen eigenen Binärcode.

In der akademischen Welt lebte die Tradition aber weiter. Der Vorteil dieser offenen Quellen ist, daß ein Programm einfach auf neue Plattformen portiert werden kann und ggf. angepasst werden kann. Wer den Quellcode eines Programmes besitzt, muß nicht mit Fehlern leben, er kann sie selbst beheben. Man ist nicht der Update- und Fehlerkorrektur-Politik einer Software-Firma ausgeliefert, die oft genug als unzureichend erlebt wurde.

Die Open-Source Bewegung geht einen Schritt weiter: Sie hebt die Bedeutung von offenem und kostenfreiem Quellcode für einen erfolgreichen Entwicklungsprozeß hervor. Dabei beruft sie sich auf einen legendären Artikel von Eric S. Raymond: ``The Cathedral and the Bazaar'' (,,Die Kathedrale und der Basaar``)13. Raymond beschreibt, unter welchen Voraussetzungen und warum die Entwicklung von freier Software so erfolgreich ist.

Einige Vorteile sind:

Meistens wird für die Koordination von Entwicklern, Testern und Anwendern eine oder mehrere Mailinglisten eingesetzt. Durch das Internet (über WWW, ftp oder CVS) lassen sich die häufigen Updates problemlos verteilen.

Mittlerweile gibt es außer C noch ein paar andere Sprachen, die auf Un*x-Systemen weit verbreitet sind und daher von mancher Software benötigt werden: PERL, Tcl/Tk, Fortran, C++, Java, Python, ...

Offene Software setzt auf offene Standards, die von allen anerkannt werden; proprietäre Formate sind tabu. Konfigurationsdateien sind in aller Regel menschenlesbare Textdateien, die einfach mit einem Texteditor14bearbeitet werden können. Für die Speicherung und den Austausch von Daten werden auch wieder Textdateien oder allgemein anerkannte, offene Standards benutzt, wie z.B. HTML, XML, CORBA. Linux und die glibc z.B. sind weitestgehend mit der POSIX-Spezifikation kompatibel, was eine sehr einfache Portierung von Programmen anderer Un*x-Derivate gewährleistet.

Diese Textformate haben eine gewisse Zukunftssicherheit. Vieles spricht dafür, daß man auch noch in vielen Jahren ein SGML Dokumente wird parsen können, da der Aufbau gut dokumentiert ist und Umwandlungen in andere Formate einfach ist. Und zur Not ist es ja ein Textformat, so daß man in der allergrößten Not die Informationen sogar von Hand (Texteditor) extrahieren kann.


next up previous
Nächste Seite: Freie Software Aufwärts: Philosophie freier Software Vorherige Seite: Philosophie freier Software
Kurt Garloff
2000-10-25