Was ist Open Source Software? Open Source und FOSS erklärt

Jeder von Ihnen verwendeten Software liegt Quellcode zugrunde, der die Befehle ausgibt und die Daten verarbeitet, mit denen die Software das tun kann, was sie tut. Die Frage, wer das Recht haben sollte, diesen Quellcode zu betrachten, zu ändern oder weiterzugeben, war lange Zeit eine der grundlegenden ideologischen Unterschiede in der Computerwelt.

Befürworter von Open-Source-Software stehen, wie der Name schon sagt, auf der Seite der Offenheit; Sie sind der Meinung, dass Menschen das Recht haben sollten, auf den Quellcode der von ihnen verwendeten Software zuzugreifen. Wie wir jedoch sehen werden, gibt es in der Praxis viel Abwechslung, die unter dieses Label fällt. In nahezu jeder denkbaren Nische gibt es verschiedene Arten von Open-Source-Software - tatsächlich dominiert Open Source viele von ihnen.

Was ist Open Source Software, was ist freie Software - und unterscheiden sie sich?

Eine prägnante Definition von Open Source-Software ist, dass es sich um Software handelt, deren zugrunde liegender Code untersucht, geändert und neu verteilt werden kann. (Es gibt eine längere und offiziellere Definition, auf die wir gleich noch eingehen werden.) Die „veränderten und neu verteilten“ Teile sind wirklich der Schlüssel zur Open Source-Philosophie. Ungeachtet dessen, was der Name andeutet, wird es nicht zu Open Source, wenn Sie Ihren Quellcode einfach öffnen, damit die Leute ihn ansehen können.

In gewisser Weise ist der Begriff „Open-Source-Software“ ein Retronym: In den frühen Jahrzehnten der Informatik war der Quellcode der Software selbstverständlich verfügbar und wurde zwischen Forschern und Wissenschaftlern der Industrie frei ausgetauscht. Es gab nur wenige Computer, von denen erwartet wurde, dass sie von ihren Benutzern umfassend modifiziert wurden, sodass die Benutzer Zugriff auf den Code benötigten. In vielerlei Hinsicht wurde Software als Add-On zur Computerhardware angesehen. Erst 1974 wurde gesetzlich festgelegt, dass Software dem Urheberrecht unterliegt. Als jedoch Ende der 1970er Jahre die Ära der Mikrocomputer begann, begann die Branche zu der Position überzugehen, dass Software an und für sich einen monetären Wert hatte und dass der Zugriff auf den zugrunde liegenden Code eingeschränkt werden könnte und sollte, um Softwareentwickler zu schützen 'Rechte.Der berühmte offene Brief von Bill Gates aus dem Jahr 1976 an Hobbyisten, die sich über die weit verbreitete Piraterie von Microsofts erstem Produkt, dem Altair BASIC-Interpreter, beschweren, ist ein Wendepunkt dieser Verschiebung.

Während diese neuen Ideen von der schnell wachsenden Softwareindustrie schnell aufgegriffen wurden, drängten sich einige Leute gegen sie. Einer der frühesten Gegner war Richard Stallman, der 1985 die Free Software Foundation (FSF) gründete. Die „freie“ freie Software soll die Freiheit der Benutzer bezeichnen, Code nach Belieben zu ändern und zu verbreiten. Es gibt keine Regel gegen das Aufladen von Geld für freie Software in diesem Sinne. Oft wird zwischen „frei wie in Freibier“ und „frei wie in Redefreiheit“ unterschieden, wobei sich freie Software im letzteren Lager befindet.

Dennoch machte die Idee der freien Software viele Menschen in der Privatwirtschaft nervös, die schließlich keine Fans des Verschenkens waren. 1998 prägte Christine Peterson den Begriff „Open Source“ teilweise, um die Idee für Neuankömmlinge zugänglicher zu machen, insbesondere für diejenigen, die in gewinnorientierten Unternehmen arbeiten. Obwohl Stallman sich dem Begriff Open Source widersetzt hat und sagt, dass er sich von den ursprünglichen politischen und philosophischen Ideen der freien Software abwendet, ist er der dominierende Ausdruck, der dieses Konzept beschreibt. Das Venn-Diagramm von freier und Open-Source-Software überschneidet sich so weit, dass beide manchmal unter dem Akronym FOSS (freie und Open-Source-Software) kombiniert werden . Im Allgemeinen ist jede freie Software Open Source, obwohl ein kleiner Teil der Open Source-Software Lizenzbedingungen hat, was bedeutet, dass sie nicht kostenlos ist (mehr zur Open Source-Lizenzierung gleich).

Das Konzept der freien und Open-Source-Software führte zu einer anderen Retronym-Definition: „proprietäre Software “, jede Software, die nicht Open Source ist.

Open Source-Softwarelizenzen

Alle Rechte und Pflichten im Zusammenhang mit Open Source-Software werden durch die Lizenzen festgelegt, unter denen die Software vertrieben wird. Als sich die Rechtslehre etablierte, dass Software dem Urheberrecht unterliegt, wurden Softwarelizenzen geschrieben, um einen Vertrag zwischen dem Urheberrechtsinhaber und dem Benutzer abzuschließen, der dem Benutzer die Erlaubnis gab, die Software auf einem PC auszuführen.

Ursprünglich existierten Softwarelizenzen, um das Benutzerverhalten einzuschränken und die Rechte des Softwareherstellers zu schützen. Befürworter freier Software erkannten jedoch, dass sie den ursprünglichen Zweck der Lizenzen umkehren konnten: Die Lizenz eines Softwarepakets könnte stattdessen erfordern, dass der zugrunde liegende Code für jeden verfügbar ist, der die Software verwendet, und dass Benutzer das Recht haben, diesen Code zu bearbeiten und weiterzugeben. Die erste Open-Source-Softwarelizenz (obwohl sie älter als der Begriff ist) ist wahrscheinlich der GNU Emacs-Kopiergenehmigungshinweis, der 1985 für die Version des Emacs-Texteditors veröffentlicht wurde, der von FSFs Stallman geschrieben wurde.

Seitdem hat die Anzahl der kostenlosen und Open-Source-Lizenzen zugenommen, wobei jeweils leicht unterschiedliche Bedingungen für die Verwendung des lizenzierten Codes festgelegt wurden. Wikipedia unterhält ein ziemlich gutes Diagramm mit Details zu den wichtigsten Lizenzen. Per Definition gewährt jede dieser Open Source-Lizenzen den Benutzern die drei Grundfreiheiten, Quellcode lesen, bearbeiten und weitergeben zu können. Der Hauptbereich, in dem sie sich unterscheiden, sind die Begriffe, die sie der Umverteilung auferlegen:

  • Mit zulässigen Lizenzen können Sie jeden Quellcode nach Belieben weitergeben. Sie können beispielsweise Quellcode verwenden, der unter einer zulässigen Lizenz veröffentlicht wurde, ihn in Ihre eigene Software integrieren und diese Software dann unter einer proprietären Lizenz freigeben. Die BSD-Lizenz ist eine der bekanntesten zulässigen Lizenzen.
  • Für Copyleft-Lizenzen muss jeder neu verteilte Code, der den lizenzierten Code enthält, auch unter einer ähnlichen Lizenz veröffentlicht werden. Bei den verschiedenen Versionen der GNU Public License (GPL) der FSF handelt es sich um Copyleft-Lizenzen. Ziel ist es, von Entwicklern eine Vorauszahlung zu verlangen, indem sie die Vorteile teilen, die sie durch die Einbindung von Open Source-Code in ihr Projekt erhalten haben.

Es ist interessant festzustellen, dass sich die Ideen hinter diesen Lizenzen über die Software-Welt hinaus verbreitet haben. Das Creative Commons ist eine rechtliche Infrastruktur für die Anwendung ähnlicher Begriffe auf schriftliche oder visuelle künstlerische Arbeiten.

Die Open Source Definition und die Open Source Initiative

Open Source wird naturgemäß nicht von einer einzelnen Einheit oder Organisation kontrolliert. 1998 gründete eine Gruppe prominenter Entwickler, darunter Bruce Perens und Eric S. Raymond, die Open Source Initiative (OSI), eine gemeinnützige Organisation, die sich für Open Source in der größeren Softwareindustrie einsetzt. Das OSI versuchte und scheiterte 1999, den Begriff Open Source zu kennzeichnen. Dennoch ist ihre formale Open Source-Definition im Konsens der Rahmen, dem alle Lizenzen folgen, die sich Open Source nennen. Zusätzlich zu der bereits besprochenen Freiheit, Code zu untersuchen, zu ändern und weiterzugeben, verbietet die Open Source-Definition Lizenzen, die bestimmte Gruppen oder Personen diskriminieren und verhindern, dass der Code für einen bestimmten Zweck oder ein bestimmtes Tätigkeitsfeld verwendet wird. oder von der Ausführung auf einem bestimmten Gerät oder Gerätetyp.

Open Source-Entwicklung und Open Source-Projekte

Die Entwicklung mit Open Source Code erfolgt in allen Umgebungen, von Universitäten bis zu großen Unternehmen, und folgt häufig denselben Mustern wie jede andere Art der Softwareentwicklung. Es gibt jedoch eine bestimmte Art von offenem Community-Entwicklungsprozess, der mit Open Source verbunden ist. In seinem einflussreichen Aufsatz „Die Kathedrale und der Basar“ skizzierte Eric S. Raymond seine Vision für diesen Prozess, bei dem jeder auf den Code zugreifen kann, und Aktualisierungen werden der Codebasis von einer weit verbreiteten Gruppe von Entwicklern hinzugefügt, die als ihr Interesse diktiert.

Open Source-Entwicklung dieser Art ist um Open Source-Projekte herum organisiert . Diese funktionieren manchmal mit einer einzelnen Software und manchmal mit einer ganzen Reihe verwandter Anwendungen. Die Versionskontrollsoftware hält alle Beiträge auf dem Laufenden. GitHub ist wahrscheinlich das beliebteste.

Open-Source-Projekte, die manchmal von einer einzelnen Person begonnen werden, sind im Allgemeinen selbstorganisierte, kleine Internet-Communities, und obwohl jeder zu jedem Projekt beitragen kann, werden die meisten normalerweise von einer relativ kleinen Gruppe von Entwicklern bearbeitet. Manchmal kann ein Projekt von einem gemeinnützigen Unternehmen gesponsert werden, das plant, die von ihm produzierte Software zu verwenden, und sogar die prominentesten Entwickler des Projekts auf die Gehaltsliste zu setzen.

Open Source Beispiele

Open-Source-Software ist in der Tat allgegenwärtig und bildet einen Großteil der Grundlage des modernen Internets. Das vielleicht bekannteste Open Source-Projekt ist Linux, die Open Source-Unix-Variante, die Millionen von Servern mit Strom versorgt. Weitere wichtige und äußerst wichtige Projekte sind der Apache-Webserver, die MySQL-Datenbank und WordPress. Zahlreiche Entwicklungsframeworks werden als Open Source veröffentlicht, von Ruby on Rails bis hin zu .NET Core von Microsoft.

Open Source war weniger erfolgreich bei der Herstellung von Heimcomputersoftware für normale Benutzer. Trotz der hohen Kosten für proprietäre Softwarepakete wie Microsoft Word und Adobe Photoshop gelang es Open-Source-Kollegen wie OpenOffice und GIMP nie, eine Nische zu finden, die über eingefleischte Enthusiasten hinausgeht, zum großen Teil, weil die Open-Source-Community Funktionen und Flexibilität traditionell vorrangig gegenüber der Benutzerfreundlichkeit priorisiert hat verwenden. (Die Sperrung des Dateiformats von proprietären Anbietern hat nicht geholfen.) Selbst Linux, dessen Befürworter seit Ende der neunziger Jahre behaupten, dass das Open-Source-Betriebssystem nur noch ein Jahr von der Dominanz des Desktops entfernt ist, hat es nie wirklich geschafft, auf das zu springen Verbraucherraum. Im Allgemeinen wird Open Source für die Infrastruktur weitaus häufiger verwendet als für Endbenutzersoftware.Die Umstellung von monolithischer Software, die Sie lokal ausführen, auf SaaS-Apps war jedoch ein Segen für Open Source, da Cloud-basierte Infrastrukturen weitgehend auf Stacks basieren, die von Open Source dominiert werden.

Erinnern Sie sich, was wir über gewinnorientierte Unternehmen gesagt haben, die Open Source unterstützen? Häufig werden diese Projekte unter einer zulässigen Lizenz erstellt, sodass diese Unternehmen Open Source-Code in den Mittelpunkt ihres proprietären Angebots stellen und gleichzeitig als Community-Projekt eine separate Open Source-Codebasis verwalten können. Zum Beispiel hat das mobile Android-Betriebssystem Linux im Kern; Alle mobilen und Desktop-Betriebssysteme von Apple basieren auf Darwin, einem Open-Source-Betriebssystem, das ursprünglich von BSD Unix abgeleitet wurde. Sogar Googles Chrome basiert auf einem Open-Source-Browser namens Chromium.

Die Open Source Community und die Open Source Bewegung

Open Source ist mehr als nur ein Entwicklungsprozess. Es ist eine Philosophie, die die Menschen leidenschaftlich lieben, und es ist eine soziale Gemeinschaft, der sich jeder mit Programmierkenntnissen anschließen kann. Tatsächlich handelt es sich um eine ganze Reihe von Communities, wie die Linux Foundation es ausdrückt. (Die Existenz von gemeinnützigen Organisationen wie der Linux Foundation und dem OSI ist ein wichtiger Aspekt dieser Community.) Florian Effenberger hat einen großartigen Aufsatz darüber, wie die Open Source-Community sein Leben bereichert hat.

Sie werden oft Leute über die Open-Source- oder Freie-Software-Bewegung sprechen hören, die eine Konnotation von Politik und Interessenvertretung hat. Viele Leute in der Open-Source-Community haben sich aus verschiedenen Gründen für eine breite Akzeptanz von Open-Source-Software eingesetzt: Sie glauben, dass Open Source von Natur aus besseren Code produziert, oder sie denken, dass der Zugriff auf Quellcode ein Grundrecht ist, das Computerbenutzer genießen sollten. oder eine Kombination aus beiden. Dieser Aspekt der Community scheint heute etwas weniger sichtbar zu sein, aber vielleicht liegt das daran, dass Open Source in vielerlei Hinsicht gewonnen hat. Bereits im Jahr 2001 sagte der damalige Microsoft-CEO Steve Ballmer, Linux sei aufgrund seiner Open-Source-Lizenz „ein Krebs, der sich im Sinne des geistigen Eigentums an alles bindet, was er berührt.“ Heute ist Microsoft ein umfassender Benutzer und Hersteller von Open Source-Software.Das sind die letzten zwei Jahrzehnte der Open Source-Geschichte auf den Punkt gebracht.

Open Source Software herunterladen

Möchten Sie mit dem Surfen und Basteln an Open Source-Projekten beginnen? Besuchen Sie die Seite Projekte und Anwendungen von opensource.com, die Registerkarte Explore von GitHub oder die Software Map des Open Source Development Network. Es gibt viel für neugierige Leute jeden Könnens.