Open Source
Definition und kurze Geschichte
Open Source ist Englisch für „Quelloffen“, was in der Softwareentwicklung bedeutet, dass der Quellcode von Open-Source-Software öffentlich zugänglich ist und von jeder Person vervielfältigt und verändert werden kann. Oft wird Open Source mit Linux, das in den 1990er Jahren entstanden ist, gleichgesetzt. Open-Source-Software gibt es jedoch schon deutlich länger. Das Konzept wurde bereits in den späten 1960er und frühen 1970er Jahren entwickelt. Seitdem hat die Bedeutung von Open-Source-Software (OSS) kontinuierlich zugenommen. So hat sich OSS von einer Nische so weit entwickelt, dass moderne Softwareentwicklung ohne OSS nicht so effizient möglich wäre, wie sie es momentan ist. Details zur Geschichte und den Prinzipien von Open-Source-Software finden Sie in unserem Blog.
Open Source vs. Proprietär
Das Gegenstück zur quelloffenen Software bildet proprietäre oder auch Closed-Source-Software, deren Nutzung durch einen Copyright-Inhaber für die Nutzung lizenziert werden muss. Daher ist es verboten die Software zu verändern oder zu kopieren. Dieser fundamentale Unterschied zwischen Open- und Closed-Source-Software führt dazu, dass beide Softwaretypen auch ganz unterschiedliche Stärken und Schwächen haben.
Vorteile von Open-Source-Software
- Kein Vendor Lock-in: Open Source Projekte entstehen entweder als eine Alternative für eine proprietäre Software oder einfach, weil ein Bedarf besteht. In vielen Fällen entsteht eine Vielzahl von ähnlichen Projekten mit jeweils leicht unterschiedlichem Fokus, die jedoch ähnlich genug sind, um zwischen ihnen wechseln zu können. Für Quellcodeverwaltung mit Git gibt es zum Beispiel weit verbreitete Tools wie GitLab, GitHub oder SCM-Manager. Außerdem besteht immer die Möglichkeit ein Projekt selber weiterzuführen. Dadurch besteht nicht die Gefahr von einem Anbieter abhängig zu werden.
- Niedrige Betriebskosten: Die meisten Open-Source-Tools können kostenlos heruntergeladen werden. Für die Nutzung mancher Tools können zwar Kosten anfallen, diese sind aber meist geringer als Kosten für Closed-Source-Produkte.
- Zugang zu Innovationen: Durch Unternehmen vorgenommene Anpassungen an Open-Source-Software werden in der Regel, wenn sie nicht zu spezifisch sind, der Community zur Verfügung gestellt. Dadurch können andere Nutzende (Unternehmen) unmittelbar an der Weiterentwicklung teilhaben. Neuerungen bzw. Innovationen stehen so zur Verfügung.
- Individualisierbarkeit: Da Open-Source-Software von allen Nutzenden angepasst werden kann, ist die Vielfältigkeit sehr hoch. Das kann sich entweder durch sehr umfangreiche Kernfunktionen oder durch eine Vielzahl von Plugins für die Software ausdrücken.
- Qualität: Neben einer hohen Vielfältigkeit hat Open-Source-Software in der Regel auch eine hohe Qualität und Sicherheit. Das kommt daher, dass sich eine große Anzahl an Entwickelnden direkt mit der Architektur und dem Code der Open-Source-Anwendungen beschäftigen kann. Außerdem haben Open-Source-Projekte in der Regel strikte Prozesse zur Qualitätssicherung, zum Beispiel durch Reviews.
Open Source Lizenzen
Obwohl die Prinzipien für alle Open-Source-Projekte gleich sind, gibt es eine Vielzahl an unterschiedlichen Lizenzen, die für Open-Source-Software benutzt werden. Die Lizenzen unterscheiden sich in den Voraussetzungen, unter denen die Open-Source-Software verändert und weiterverwendet werden darf. Sehr verbreitet sind diese Lizenzen:
- Apache License 2.0
- BSD 3-Clause "New" or "Revised" license
- BSD 2-Clause "Simplified" or "FreeBSD" license
- GNU General Public License (GPL)
- GNU Library or "Lesser" General Public License (LGPL)
- MIT license
- Mozilla Public License 2.0
- Common Development and Distribution License
- Eclipse Public License version 2.0
Beispiele für Open-Source-Projekte
In manchen Fällen ist es überraschend, welche Projekte alle Open Source sind und welche Unternehmen diese vorantreiben. Deswegen hier ein paar Beispiele:
- Linux (Red Hat)
- Git (GitHub)
- MySQL (Oracle)
- Docker (Docker)
- .NET (Microsoft)