Was ist Open Source und Free Software?

Was ist "Open Source"?     Lizenzarten-Vergleich
 1.1 Free Software      2.1 Sicht des Software-Entwicklers
 1.2 GNU General Public License      2.2 Sicht des Quellcodes
 1.3 Closed Source      2.3 Abgeleitete Lizenzen
 1.4 Vorteile von Open Source      2.4 Weitere Lizenzarten
 1.5 Nachteile von Open Source      2.5 Shared Source
 1.6 Bekannte Projekte     

1 Was ist "Open Source"?

Open Source Software (quelloffene Software) unterliegt einer Lizenz, die folgende 10 Regeln erfüllen muss (Kurzform, siehe auch die vollständige deutsche/englische Definition):
  1. Freie Weitergabe (keine Beschränkung, Lizenzkosten oder Gebühren).
  2. Quellcode ist frei verfügbar.
  3. Veränderungen und Ableitungen des Quellcodes sind zulässig.
  4. Veränderungen am Quellcode müssen erkennbar sein.
  5. Keine Diskriminierung von Personen oder Gruppen.
  6. Keine Beschränkung des Einsatzfeldes.
  7. Hält man die Software in Händen, so hat man automatisch eine Lizenz dafür.
  8. Keine Beschränkung auf eine bestimmte Kombination mit anderen Produkten.
  9. Weitergabe zusammen mit anderer Software unterwirft diese keinen Regeln.
  10. Muss technologie-neutral sein (Hardware, Schnittstellen, Protokolle).

1.1 Free Software

Der Begriff Open Source Software ist lediglich eine aus Marketinggründen von der Open Source Initiative (OSI) eingeführte andere Bezeichnung für Free Software (Freie Software), der einen Markennamen für Freie Software einführen sollte. Grund dafür war vor allem, dass der Begriff "free" im Englischen gleichermaßen für "frei" und für "umsonst" stehen kann.

Die FSF (Free Software Foundation) bzw. die fsfe (Free Software Foundation Europe) ist über den Begriff "Open Source" nicht sehr glücklich (siehe "Wir sprechen von Freier Software") und möchte, dass er nicht verwendet wird, da er den Gedanken "Free Software" verwässert.

Freie Software wird durch folgende 4 Freiheiten definiert:

  1. Die Freiheit der unbegrenzten Nutzung zu jedem Zweck.
  2. Die Freiheit des Studiums und der Modifikation (Zugang zum Quelltext ist dafür eine Voraussetzung).
  3. Die Freiheit der Weitergabe (Kopieren ist erlaubt).
  4. Die Freiheit der Weitergabe von modifizierten Versionen (Zugang zum Quelltext ist dafür eine Voraussetzung).

Bitte die Begriffe "Free Software" und "Freeware" nicht verwechseln!

1.2 GNU General Public License

Die FSF bzw. einer ihrer engagiertesten Vertreter Richard Stallman im Jahr ist Urheber der Lizenzen GPL (GNU General Public License) und LGPL (veraltet für "GNU Library General Public License", neuer für "GNU Lesser General Public License"), die eine Verbreitung von Freier Software fördern und die rechtlichen Rahmenbedingungen dafür schaffen sollen.

Der mit der GPL verbundene Begriff des "Copyleft" (als Wortspiel zu "Copyright") verlangt, dass keine der obigen Freiheiten eingeschränkt werden darf, wenn unter der GPL stehende Software weitergegeben wird.

Die GPL wird gerne auch als "infektiös" angesehen, da die Vermischung von anderer Software mit GPL-Software erzwingt, dass diese ebenfalls der GPL unterworfen wird. Aus diesem Grunde stehen viele Software-Pakete unter der LGPL (z.B. die C-Bibliotheken), die dies nicht fordert. Was allerdings gerne vergessen wird, ist die Tatsache, dass niemand gezwungen ist, GPL-Software einzusetzen. Dies ist immer eine rein freiwillige Entscheidung!

Im übrigen ist es auch moralisch nicht einzusehen, warum Software, die von vielen Freiwilligen entwickelt und gepflegt wird, nichts kostet und sehr viel Arbeit einspart, für beliebige Zwecke eingesetzt werden kann, ohne dafür irgend etwas an diese Gemeinschaft zurückzugeben. Im Falle der GPL ist dies eben wieder Software und nicht Geld.

Viele Software-Pakete (z.B. Qt, sendmail, ghostscript) gibt es sogar unter 2 Lizenzen:

  • Unter der GPL, die eine Offenlegung der damit verknüpften eigenen Software fordert und dafür keine Kosten verursacht.
  • Unter einer zweiten Lizenz, die keine Offenlegung der eigenen Software fordert und dafür Lizenzgebühren kostet.
D.h. man hat auch die freie Wahl, welche Art von Lizenz man einsetzen möchte.

1.3 Closed Source

Als Gegensatz zu Open Source lässt sich Closed Source ("Proprietary Source") sehen. Der Quellcode bleibt dabei in Besitz einer Firma, einer Gruppe oder eines Einzelnen. Nur der übersetzte, ausführbare Code (EXE-Datei) wird verteilt. Meist ist er nur gegen Geld erhältlich und unterliegt häufig äußerst restriktiven Lizenzen (EULA = End User License Agreement), z.B.:
  • An bestimmten Rechner(konfiguration) gebunden.
  • Darf nicht weiterverkauft werden.
  • Darf nicht verliehen werden.
  • Darf nicht analysiert werden.
  • Dürfen keine Fehler behoben bzw. diese Korrekturen nicht weitergegeben werden.
  • Darf nicht erweitert werden.

1.4 Vorteile von Open Source

  • Open Source fördert Standards, weil Open Source nur funktioniert, wenn sich alle an Standards halten.
  • Standards fördern wiederum den Wettbewerb und erschweren so die Monopolisierung von Märkten.
  • Die Software wird von vielen gleichzeitig getestet und schnell bereinigt.
  • Der Quellcode wird von vielen Experten geprüft (d.h. Fehler und Sicherheitslücken werden schnell entdeckt und Korrekturen dafür bereitgestellt).
  • Fehler können selbst behoben werden.
  • Erweiterungen können selbst gemacht werden.
  • Das Knowhow ist einsehbar (man kann daraus lernen).
  • Die Dokumentation ist hervorragend (meistens).
  • Keine Lizenzkosten.

1.5 Nachteile von Open Source

Open Source wird eine Reihe von Nachteilen zugeschrieben, die hier aufgelistet und (hoffentlich) widerlegt werden sollen:
  1. Open Source (z.B. Linux) verletzt Software-Patente oder Urheberrechte.

    Antwort 1: Dies wird hoffentlich im Zusammenhang mit den SCO-Prozessen geklärt, Fakt ist aber bereits heute:

    1. Bisher ist kein Open Source Quellcode benannt worden, der Patente oder Urheberrecht verletzt.

    2. Falls wirklich derartiger Quellcode enthalten sein sollte, so wird er unverzüglich durch freien Quellcode ersetzt, sobald die betroffenen Stellen bekannt sind.

    3. Betroffen sind auf keinen Fall die Anwender von Open Source, sondern allenfalls die Hersteller bzw. Vertreiber davon.

    Antwort 2: Closed Source kann völlig analog beliebige Patente verletzen (allerdings sind derartige Verletzungen schwerer zu entdecken und zu beweisen).

  2. Es gibt keinen rechtlich Verantwortlichen, den man haftbar machen kann.

    Antwort 1: Es gibt aber sehr wohl moralisch Verantwortliche und ein gemeinsames Interesse aller Beteiligten, die Projekte sorgfältig und koordiniert abzuwickeln.

    Antwort 2: Bei Closed Source kann niemand über den Preis der Software hinaus haftbar gemacht werden.

  3. Die Entwicklungsrichtung ist nicht schriftlich festgelegt.

    Antwort 1: Sie wird aber häufig gemeinsam durch die Entwickler und Anwender informell festgelegt und auch freimütig offengelegt (Anwender = Entwickler).

    Antwort 2: Gerade bei Closed Source bestimmt (ein) Hersteller alleine die Entwicklungsrichtung.

  4. Es gibt keine rechtliche Sicherheit, dass die Software weiter gepflegt wird.

    Antwort 1: Bei den wirklich für viele interessanten Projekten kann man mit an Sicherheit grenzender Wahrscheinlichkeit davon ausgehen, dass diese nicht sterben werden (z.B. Betriebssystem Linux, Webbrowser Mozilla Firefox, Webserver Apache, Office-Paket OpenOffice, C/C++-Compiler gcc/g++, Grafische Oberfläche KDE, SMB-Server Samba, Skriptsprachen Perl und PHP). Im Extremfall übernimmt man einfach den Quellcode und pflegt ihn selbst, das kann einem niemand verwehren.

    Antwort 2: Auch bei Closed Source kann ein Hersteller jederzeit ein Produkt abkündigen oder nicht mehr weiterentwicklen (wie in der Vergangenheit bei Aufkäufen bereits häufig geschehen, es gibt keine Chance, dies als Kunde zu verhindern).

  5. Das Knowhow ist nicht geschützt.

    Antwort 1: Aus dem Knowhow anderer kann man auch sehr viel lernen und z.B. die gleichen Fehler nicht selbst erneut machen. Software ist extrem aufwendig zu entwickeln und zu testen, wieso sollen Dinge, die von vielen gebraucht werden, hier mehrfach programmiert werden. Auch in vielen anderen Bereichen werden heute Synergien genutzt und auf Effizienz geachtet.

    Antwort 2: Auch Closed Source wurde in der Vergangenheit schon häufig mit Hilfe von "Reverse Engineering" analysiert und dann nachgebaut bzw. sogar verbessert.

  6. Man kann kein Geld damit verdienen.

    Antwort 1: Viele erfolgreiche Unternehmen (SuSE, RedHat, IBM, Hewlett-Packard, 1&1, SerNet, …) zeigen aber, dass das doch geht.

    Antwort 2: Man kann auch mit Closed Source Software pleite gehen.

1.6 Bekannte Projekte

Hier eine kleine Auswahl von Open Source Projekten, die zu den bekanntesten zählen: Liste mit vielen weiteren Open Source Projekten.

2 Lizenzarten-Vergleich

Es gibt nicht nur eine, sondern viele Spielarten von Open Source Lizenzen mit mehr oder weniger restriktiven Anforderungen. Allen gemeinsam sind bestimmte Mindestanforderungen. Folgende Tabelle soll einen Eindruck der wesentlichen Eigenschaften solcher Lizenzen geben ("•" = erfüllt, "–" = nicht erfüllt, "¤" = nicht anwendbar).

    Freiheiten   Grenzen
Lizenz / Eigenschaft   Ohne Kosten Frei verfüg- bar Zeitlich unbe- grenzt Quellcode verfügbar Quellcode ändern erlaubt   Ableitung muss wieder frei sein Mischen mit prop. Software verboten Lizenz- inhaber hat spez. Rechte
Keine Open Source Lizenzen
Kommerzielle Software   ¤   ¤ ¤
Shareware   (–) ¤   ¤ ¤
Freeware (Pegasus Mail)   ¤   ¤ ¤
Lizenzfreie Libraries   ¤   ¤
Shared Source (Microsoft)     ¤ ¤
Public Domain    
Open Source Lizenzen
BSD, MIT    
GNU LGPL    
GNU GPL    
NPL, QPL, …    

Eine weitere gute Veröffentlichung zum Thema "Freie Software".

2.1 Sicht des Software-Entwicklers

Aus der Sicht des Software-Entwicklers betrachtet ergibt sich für die verschiedenen Lizenzarten folgende Reihenfolge von frei zu restriktiv:

LizenzEigenschaft
BSDNimm den Code, mach damit was du willst
LGPLNimm den Code, mach damit was du willst
(mit Einschränkungen)
GPLNimm den Code, aber mache ihn zu Open Source
Shared SourceNimm den Code, aber werde vorher Club-Mitglied
Proprietäre LizenzNimm nichts, außer du bezahlst vorher dafür
Proprietäre Closed SourceNimm nichts

2.2 Sicht des Quellcodes

Aus der Sicht des Quellcodes betrachtet ergibt sich für die verschiedenen Lizenzarten folgende Reihenfolge von frei zu restriktiv:

LizenzEigenschaft
GPLAlles immer frei
LGPLEiniges frei
BSDFrei, aber kann proprietär werden
Shared SourceFrei für einige Benutzer
Proprietäre LizenzNicht frei; zu bezahlen
Proprietäre Closed SourceNicht verfügbar

2.3 Abgeleitete Lizenzen

Sogenannte "Approved Licenses" übernehmen die wesentlichen Elemente der GPL oder von Open Source, sehen aber für den Lizenzinhaber noch besondere Rechte vor. Beispiele dafür sind:
  • Artistic License (Perl)
  • ASF (Apache Software Foundation License)
  • BSD (Berkeley Software Distribution License)
  • MIT (Massachusetts Institute of Technology)
  • MPL (Mozilla Public License)
  • NPL (Netscape Public License)
  • QPL (Qt Public License)
  • SISSL (Sun Industry Standards Source License)
  • SPL (Sun Public License)

2.4 Weitere Lizenzarten

  • Careware/Charityware: Bitten den Anwender der Software, (freiwillig) eine gemeinnützige Spende zu entrichten.
  • Crippleware: Abgespeckte Shareware, die einen Vorgeschmack auf die Vollversion gibt und so den Erwerb dieser Software fördern soll.
  • Donationware/Giftware: Freeware, bei der der Autor um eine Spende in beliebiger Höhe bittet, wenn einem die Software gefällt und man sie regelmäßig benutzt.
  • Freeware: Etwas unklarer Begriff, der meist beinhaltet, dass der Autor einer Software auf Vergütung verzichtet und die Verbreitung und Bearbeitung nicht einschränkt.
  • Postcardware: Die Autoren wünschen vom Anwender der Software die (freiwillige) Zusendung einer Postkarte.
  • Public Domain (gemeinfrei): Steht der Allgemeinheit uneingeschränkt zur Verfügung.
  • Shareware: Vertriebsform, die das zeitlich beschränkte Nutzungsrecht zur Prüfung der Software gestattet. Die Software darf beliebig kopiert werden, nach dem Testzeitraum muss man sich registrieren lassen.
  • Beerware/Sweetware: Die Autoren freuen sich darüber, wenn ihnen ein Anwender bei Gelegenheit ein Bier ausgibt oder eine Süßigkeit zusendet.

2.5 Shared Source

Von Microsoft seit einiger Zeit propagierte, sehr eingeschränkte Form von Open Source mit folgenden Eigenschaften:
  • Einsicht in den Code ist zu bezahlen.
  • Verbesserungen am Code durch andere werden nicht bezahlt und
  • sie erhalten auch keine Rechte daran.
  • Verwendet jemand das Wissen, das er beim Beheben von Bugs gelernt hat, verstößt er gegen Microsofts Rechte am geistigen Eigentum.
Motto: "Was uns gehört, bleibt unser.
Und wenn du mitarbeitest,
gehört dein Beitrag auch uns."