Warum Open Source
Open Source (OSS) ist überall. Kaum ein Projekt kommt ohne bestehende Softwarepakete aus. Die Wiederverwendung spart Zeit, senkt Kosten und verbessert die Qualität.
Die Frage der Nutzung von Open Source wird vielfältig diskutiert. Heute soll hier hingegen dargelegt werden was zu beachten ist, wenn selbsterstellte Software als Open Source herausgegeben werden soll. Die Ausführungen beruhen auf bewährten Praktiken und sind nicht als Rechtsberatung zu verstehen.
Es gibt eine ganze Reihe von Gründen, warum Unternehmen oder Entwickler ihren eigenen Code als Open Source veröffentlichen wollen: Open-Source-Code kann beispielsweise gute Werbung für das Unternehmen oder den Entwickler sein. Wird das Projekt populärer, können externe Open-Source-Entwickler viel Arbeit abnehmen. Das spart Kosten und eigene Entwicklungsarbeit. Bei erhöhter Entwickler-Anzahl werden meist mehr Anwendungsfälle untersucht, was zu einem robusteren Code führt. Erfahrene Entwickler haben oft Interesse, für ihr Portfolio an Open-Source-Projekten mitzuwirken. Deswegen haben viele Firmen mittlerweile ein eigenes Geschäftsmodel um Open Source entwickelt.
Erfolgsfaktoren für Open Source Projekte
Damit ein Open-Source-Projekt erfolgreich wird, muss es auch genutz werden. Dazu sollte das System natürlich einerseits etwas Sinnvolles bewerkstelligen. Um andererseits die Nutzung für Dritte aber auch rechtlich sicher zu gestalten, gilt es einige wichtige Punkte zu beachten.
1. Urheberrecht klären
Software gehört dem Urheber – einer Person, einem Unternehmen oder einer Organisation. Nur mit klaren Nutzungsrechten bleibt die Kontrolle erhalten. Um den Urheber in der Software eindeutig zu kennzeichnen, dient ein Copyright-Vermerk. Copyright-Vermerke sind ein Weg, um deutlich zu machen, dass Sie ein Mitspracherecht bei der Verwendung des von Ihnen erstellten Codes haben möchten. Fehlt der Vermerk, wird es für Nutzer schwierig festzustellen, wer die Software erstellt hat und es ist im Zweifelsfall unmöglich, eine Nutzungserlaubnis einzuholen. Ein fehlendes Copyright kann in Unternehmen dazu führen, dass ein bestimmtes Open-Source-Produkt nicht genutzt werden darf.
2. Die richtige Lizenz wählen
Einfacher wird es für die Nutzer, wenn dem OSS-Projekt weiterhin eine Lizenz beiliegt, welche klar regelt, wie und unter welchen Bedingungen die Software genutzt und geändert werden darf, wie sie weitergegeben werden darf, und wie die Software mit anderen Werken kombiniert werden darf. Die Open Source Initiative (OSI) hat hierzu eine Reihe von Kriterien erstellt, was in einer Lizenz geregelt werden sollte. Es gibt eine Vielzahl von Lizenzvorlagen, aus welchen eine passende ausgewählt werden kann.
Grundsätzlich gibt es zwei Lizenz-Typen:
- Permissive Lizenzen (BSD, MIT, Apache): Erlauben fast uneingeschränkte Nutzung.
- Copyleft-Lizenzen (GPL, LGPL, AGPL): Verpflichten zur Weitergabe unter derselben Lizenz.
Die richtige Lizenz hängt von den eigenen Zielen ab. Hilfreiche Fragen:
- Sollen Copyright und Lizenz bei der Nutzung erhalten bleiben?
- Muss der Nutzer Änderungen dokumentieren?
- Soll der Nutzer die Anpassungen wieder als FOSS herausgeben müssen?
- Soll es Einschränkungen bezüglich privater oder kommerzieller Nutzung geben?
- Möchte man für Schäden haftbar gemacht werden können?
- Soll es Auswirkung auf Patente des Nutzers geben?
Basierend auf den Antworten lässt sich dann leicht eine passende Lizenz finden. Hier hilft zum Beispiel auch die Webseite choosealicense.com oder tldrlegal.com. Die ausgewählte Lizenz sollte dem Projekt in einer COPYING- oder LICENSE-Datei beigelegt werden. Urheber werden am besten in jeder Datei einzeln aufgeführt.
Genutzte Open Source Komponente dokumentieren
Viele Projekte nutzen bestehende Open-Source-Komponenten. Diese müssen mit Lizenz und Urheber aufgelistet werden. Dies ist oftmals aufwändig zu bestimmen, vor allem wenn die Ersteller der genutzten OSS-Pakete nicht selbst auf oben aufgeführte Hinweise geachtet haben. Die Erstellung der genutzten Komponentenliste wird schnell umfangreich und übersteigt die Fähigkeit manueller Arbeit, wenn Abhängigkeiten berücksichtig werden müssen, die beispielsweise über einen Repository-Manager eingebunden werden. Automatische Tools erleichtern die Erstellung einer vollständigen Liste, welche Lizenzen und Copyrights automatisch aus dem Code auslesen und passend zusammenstellen.
Fazit
Zusammengefasst bietet Open Source viele Vorteile, erfordert aber klare Regeln. Mit einer passenden Lizenz und sauberer Dokumentation wird das eigene Projekt erfolgreich.
Viel Erfolg beim Open-Sourcen!