Warum habe ich mich für Open-Source wie Joomla, Leaflet, Gatsby oder OpenStreetMap entschieden?
Manchmal träume ich. Gestern habe ich mir vorgestellt, was wäre, wenn jeder die Möglichkeit hätte sich das, was er braucht, zu nehmen. Das funktioniert im wirklichen Leben nicht. Materielle Dinge sind begrenzt. Es wäre schnell alles aufgebraucht. Aber Moment, bei Software ist das anders!
Es ist ohne nennenswerte Mehrkosten möglich einen Programmcode, der einmal entwickelt wurde, unendlich oft zu kopieren und zu verwenden.
Freie Software und Open-Source
Was wäre, wenn Software jedem Menschen frei zugänglich wäre und alle alles nach ihren Bedürfnissen weiterentwickeln und weitergeben? Das ist das, was man Freie Software nennt. Das gibt es schon.
Open-Source geht einen Schritt weiter!
In Abgrenzung zur Freien Software stellen die Fürsprecher von Open-Source den praktischen Nutzen in den Vordergrund. Man polarisiert nicht und teilt die Welt nicht in Gut und Böse ein.
Open-Source beschreibt eine Win-win-Situation. Oft haben mehrere Menschen gleiche Anforderungen. Es ist nicht sinnvoll, wenn jeder seine eigene Software entwickelt. Es reicht aus, ein Programm einmal zu erstellen. Man verwendet sie ohne nennenswerte Mehrkosten beliebig oft. So teilen die Unternehmen sich die Kosten für die Entwicklung. Das hört sich effektiv an. Und das ist es.
Open-Source bedeutet aber nicht, wie häufig angenommen, das alles erlaubt ist. Es gibt Bedingungen, die an die Nutzung geknüpft sind. Der Quelltext jeder Open-Source Software wird unter eine Lizenz gestellt, die die Regeln genau festlegen. Auf diese rechtlichen Regelungen komme ich später zurück. Schauen wir uns aber zunächst einmal das Gegenteil von Open-Source an.
Gegenentwurf zu Open-Source Software
Der Gegenentwurf zu Open-Source ist die proprietäre Software – die unfreien Programme. Im Falle von herstellerspezifischer Software gibt es einen Herrscher. Dies ist in der Regel der Hersteller des Programms. Er erstellt den Programmcode so, dass dieser für Dritte nicht zugänglich ist. Findet man später Fehler oder plant den Einbau einer neuen Funktion, dann ist man vom Hersteller abhängig.
Ich habe mich für Open-Source entschieden, um es zu vermeiden, abhängig von einem Hersteller zu sein. Die Freiheit und Unabhängigkeit, die Open-Source bietet, ist der entscheidende Vorteil dieses Modells für mich. Jeder Mensch, der über Programmierkenntnisse verfügt, ist in der Lage Open-Source-Software weiterzuentwickeln oder zu korrigieren.
Fragen und Antworten zu Open-Source
Wie wird Open-Source-Software entwickelt?
Meist gibt es eine Community von Entwicklern, die sich mit der Software verbunden fühlen. In der Regel helfen die Programmierer gerne andern neuen Nutzern bei kleineren Fragestellungen. Sie werden dafür nicht bezahlt. Ihre Motivation ziehen sie daraus, dass sie von dem Programm überzeugt sind und gerne hätten, dass es genutzt wird.
Die Community ist eine, meist lose, Kooperationen von Entwicklerinnen und Entwicklern. Sie trifft sich in der Regel auf einer gemeinsamen Plattform im Internet. Hier wird in Zusammenarbeit programmiert, diskutiert und getestet.
Für viele ist das Gefühl, mit Gleichgesinnten zusammen an etwas Großem zu arbeiten, eine Motivation. Manche programmieren in ihrer Freizeit. Andere verdienen ihr Geld damit. Oft sind dies - so wie ich - Freiberufler, die gerne einen bezahlten Auftrag annehmen.
Was passiert wenn etwas schief läuft? Gibt es Garantien?
Wer zahlt, wenn eine Website, die mit einem Open-Source Content Management wie Joomla erstellt wurde, aufgrund eines Programmfehlers ausfällt?
Die negative Nachricht: Gewährleistungsansprüche sind im Open-Source-Bereich in der Regel ausgeschlossen.
Aber: Die Entwickler bei Open-Source-Projekt wie Joomla, Leaflet oder Openstreetmap, bei denen viele aktiv mitarbeiten, finden und beheben Fehler schnell. Schon allein im eigenen Interesse: Die Mitglieder eines Open-Source-Projektes nutzen die Software meist selbst!
Ist Open-Source kostenlos?
Jein. Für die Software an sich zahlen Sie nichts. Oft ist es aber so, dass Wissen oder eine Einarbeitung vonnöten ist. Insbesondere dann, wenn man individuelle Ansprüche hat. Diese Kenntnisse könnten Sie sich selbst aneignen. Dafür müssten Sie Zeit investieren. Wenn Sie wenig Zeit haben, werden Sie jemanden beauftragen, der schon Erfahrungen gesammelt hat. Einen Dienstleister wie mich. Ich helfe Ihnen gern, stelle aber dann in Absprache mit Ihnen meine Arbeitszeit in Rechnung.
Welche Open-Source-Lizenzen gibt es?
Der Dschungel der Open-Source Lizenzen sieht auf den ersten Blick recht kompliziert aus. Diese regeln die Urheber- und Nutzungsrechte an Programmen. Sie legen somit fest, was einem Benutzer erlaubt ist. Konkret bedeutet dies: Es wird geregelt, wie ein Anwender die Open-Source-Software
- nutzen darf,
- ob er sie ändern darf und
- unter welchen Voraussetzungen er sie weitergeben darf.
Alle Lizenzen haben folgende Gemeinsamkeit: Allen ist es erlaubt die Software für beliebige Zwecke zu verwenden und an andere weiterzugeben. Jedem ist es möglich, herauszufinden, wie die Software aufgebaut ist. Dadurch sind Benutzer in der Lage, ein Programm zu verändern, zu verbessern und diese Änderungen zu veröffentlichen.
Im Wesentlichen unterscheiden sich die Lizenzen in der Auslegung des sogenannten Copyleft.
Das Copyleft regelt, wie die Software bearbeitet und weitergegeben werden darf. Lizenzen mit starkem Copyleft erlauben das Bearbeiten der Software nur dann, wenn Änderungen und Weiterentwicklungen unter der gleichen Lizenz stehen, wie das Ausgangsprodukt. In der Praxis haben sich folgende Variationen des Copyleft herausgebildet.
- Starkes Copyleft:
Der Lizenztext verbietet jegliche Nutzung zusammen mit einer proprietären Software. - Schwaches Copyleft:
Der Lizenztext erlaubt eine Verbindung mit einer proprietären Software. Eigen-Entwicklungen, die auf der Open-Source-Software aufbauen, dürfen als proprietäre Software weitergegeben werden. - Kein Copyleft:
Der Lizenztext macht keine Vorgaben.
Lizenz mit starkem Copyleft:
- GPL (GNU General Public License)
zum Beispiel Joomla.
Lizenzen mit schwachem Copyleft:
Lizenzen ohne Copyleft:
- BSD (Berkeley Software Distribution)
zum Beispiel LeafletJs - MIT (Massachusetts Institute of Technology)
Lizenz mit starkem Copyleft für Daten und Datenbanken:
- Open Database License (ODC-ODbL)
zum Beispiel die Daten von Openstreetmap