Zum Inhalt springen

SEO Analyse » SEO Lexikon » o » Open Source

Open Source Begriffserklärung und Definition

Open SourceOpen Source Software wird oft auch als quelloffene Software bezeichnet, da ihr Quellcode anders als bei den meisten kommerziellen Programmen öffentlich zugänglich ist und von jedem interessierten Programmierer eingesehen werden kann. Sie wird häufig dadurch definiert, dass sie unter einer von der Open Source Initiative veröffentlichten Lizenz herausgegeben und vertrieben wird. Ihre Entstehung basiert auf einem Essay mit dem Titel “ Die Kathedrale und der Basar“, der aus einem Vortrag von Eric S. Raymond hervorging, den dieser während eines Linux-Kongresses 1997 in Würzburg gehalten hatte. Er beschreibt dabei die Entstehung eines Programms analog zu dem Bau einer Kathedrale – viele Spezialisten mit geheimem Wissen arbeiten unter der Aufsicht eines Leiters (Architekten) an der Fertigstellung eines Gebäudes, dessen Bauplan nicht öffentlich noch einsehbar ist. Bei der Fertigstellung sind strukturelle Mängel oder Konstruktionsfehler nicht zu erkennen, sie können bestenfalls von den Beteiligten gefunden werden, falls Schäden auftreten sollten. Dem stellt er als Organisationsform den Basar gegenüber – hier arbeiten viele gleichrangige Händler gleichberechtigt nebeneinander und bilden zusammen den Markt. Fallen einer oder mehrere von ihnen aus, werden ihre Plätze durch andere Händler ersetzt, die unter Umständen zwar nicht dasselbe Warenangebot bieten, aber insgesamt doch den Markt bereichern. Die zentrale Aufsicht (Maintainer) sorgt lediglich dafür, dass die Regeln eingehalten werden – sie nimmt aber keinerlei Einfluss auf die Art und Weise, wie die Beteiligten ihre Arbeit verrichten. Der Basar kann von jedermann besucht werden, der sich über das Warenangebot und die Preise informieren möchte – alle dürfen sich an der Existenz beteiligen. Er wird niemals endgültig fertiggestellt, sondern bildet ein flexibles Gebilde, dass je nach dem Prinzip von Angebot und Nachfrage auf verschiedene Ereignisse reagieren und sich den aktuellen Anforderungen anpassen kann. Er bietet somit eine höhere Stabilität und Ausfallsicherheit und dient zusätzlich als Ort der Begegnung, des Kontaktes und des Informationsaustausches. Angeregt von dem Essay beschloss das Unternehmen Netscape den Quellcode des nicht mehr weiter entwickelten Browser Netscape Navigator freizugeben, um der Dominanz von Microsoft Internet Explorer entgegen zu treten. Aus diesem entstand Mozilla Firefox – heute einer der am verbreitetsten und beliebtesten Browser weltweit.

Die Vorteile von Open Source

Open Source Software bietet sowohl den Programmierern als auch den Anwendern einige entscheidende Vorteile, die von beiden Seiten geschätzt werden. Der erste besteht darin, dass eine wesentlich stärkere und genauere Kontrolle möglich ist, als dies bei geschlossenen Projekten realisiert werden kann. Da der Quellcode von allen interessierten Beteiligten eingesehen und auf Schwachstellen überprüft werden kann, ist es technisch versierten Anwendern möglich, selber Fehler zu analysieren und eine Lösung zu entwickeln. Diese reicht er dann an den Entwickler weiter, der den Entwurf begutachtet und in seinen Code einbaut oder für ungenügend befindet und verwirft. Solche Lösungen werden zusätzlich in entsprechenden Listen von anderen Programmierern begutachtet und kommentiert – sie können Verbesserungen vorschlagen oder alternative Ansätze entwickeln. Auf diese Weise werden nicht nur Fehler gründlich beseitigt, sondern es sind auch deutlich mehr Personen an dem Entwicklungsprozess beteiligt, von denen jede einzelne ihr Wissen und ihre Erfahrung dem allgemeinen Ziel zur Verfügung stellen kann. Die aus diesem Vorgehen entstehende Software berücksichtigt also mehr unterschiedliche Lösungsansätze, während die gesamte Entwicklung ohne einen administrativen Druck erfolgt und kein Zwang besteht, so schnell wie möglich eine Lösung zu finden, die vielleicht das Problem behebt, sich aber bei näherer Betrachtung nicht als optimal herausstellt. Auch auf die Sicherheit wirkt sich dieses Verfahren vorteilhaft aus. Eventuelle Probleme und Routinen, die die Sicherheit kompromittieren können, werden schneller erkannt und können beseitigt werden. Kritiker halten dem gegenüber, dass eine gezielte Analyse auf solche Lücken dadurch erst möglich wird – mit der richtigen Fachkenntnis können so gezielt Schwachstellen gesucht und ausgenutzt werden. Befürworter hingegen weisen darauf hin, dass gerade durch dieses Vorgehen eine effiziente Kontrolle möglich ist – während bei geschlossener Software in der Regel sehr viel mehr Lücken bestehen und diese lediglich durch die Hoffnung geschützt werden, dass niemand sie entdecken wird. Darüber hinaus erleichtert ein offener Quellcode die Analyse eines Angriffs deutlich, zusätzlich ist niemand darauf angewiesen, dass ein Unternehmen oder eine eventuell mit dem Code nicht vertraute Gruppe von Entwicklern eine Schwachstelle mit möglicherweise unzureichenden Mitteln schließt. Unter dem Aspekt der Sicherheit ist es ebenfalls sehr wichtig, dass es auf diese Weise keinem Beteiligten möglich ist, bestimmte vom Nutzer ungewollte Funktionen wie Backdoors oder eine Umgehung von internen Sicherheitsmechanismen einzubringen – ein solcher Ansatz könnte jederzeit von anderen erkannt werden und dem eigenen Ruf nachhaltigen Schaden zufügen. Ein weiterer wichtiger, von den Anhängern hochgeschätzter Faktor ist, dass Open Source Software von vielen Interessierten gelesen wird – sei es, um selber an der Entwicklung teilzunehmen, um ähnliche Routinen zu entwickeln oder um aus den verschiedenen Ansätzen zu lernen. Sie bietet somit auch einen Nutzen für die Aus- und Weiterbildung und kann helfen, neue Konzepte und Lösungen zu finden. Da sowohl der gesamte Code als auch einzelne Teile daraus weiterverwendet werden können und dürfen, erspart es zudem einen großen Arbeitsaufwand. Einmal geschriebene Bestandteile können von verschiedenen Projekten aufgegriffen und nach eigenen Belangen modifiziert werden – sie ermöglicht es den Beteiligten, sich von Anfang an auf die Kernaufgabe zu konzentrieren, anstatt sich mit der Routine beschäftigen zu müssen.

Lizenzen und bekannte Projekte

Alle Software, die als Open Source veröffentlicht wird, muss mit einer speziellen Lizenz versehen werden, die die Weiterverbreitung regelt. Diese definiert genau, was andere Entwickler mit dem Code machen dürfen und in welcher Weise er verwertet werden darf. Um auch offiziell als Open Source eingestuft werden, müssen bestimmte Bedingungen erfüllt werden. So muss der Quellcode nicht nur verfügbar gemacht werden, sondern darf auch die Verbreitung – inklusive des Verkaufes – nicht einschränken. Die Lizenz darf keine Personen oder Gruppen ausschließen, sondern muss für alle Nutzer gleichermaßen gelten. Auch eine Einschränkung des Zweckes darf nicht stattfinden – beispielsweise indem eine kommerzielle oder militärische Nutzung verboten wird. Sie muss des Weiteren eine Veränderung des Codes und dessen Weitergabe ermöglichen, darf dafür aber bestimmte Bedingungen definieren – zum Beispiel, dass in einem solchen Fall der ursprüngliche Autor genannt werden muss. Es gibt Lizenzen, die sehr weitgehende Rechte an dem verbreiteten Code einräumen – die dahin weitestreichende, juristisch und formal jedoch vollgültige ist die WTFPL-Lizenz (Do What The Fuck You Want To Public License), die als einzige Beschränkung vorsieht, dass bei Modifikationen der Name geändert werden muss. Zu den bekanntesten Open Source Projekten gehören der ausgesprochen populäre Browser Firefox, der von der Mozilla Foundation unter der Mozilla Public License herausgegeben wird. Die Foundation veröffentlicht weitere Programme, die mit dem Internet in Zusammenhang stehen, so etwa der bekannte Email-Client Thunderbird. Ebenfalls bekannt und geschätzt ist die an Microsoft Office angelehnte Sammlung von Büroprogrammen OpenOffice bzw. das daraus entstandene LibreOffice, das einen ähnlichen Funktionsumfang wie das Vorbild besitzt. Eines der am häufigsten benutzten Open Source Projekte wiederum ist mit Sicherheit der Kern des Betriebssystem Linux, der sogenannte Kernel, der ebenfalls die Basis des mobilen Betriebssystem Android bildet. Auch im Multimedia-Bereich finden sich zahllose Anwendungen, darunter beispielsweise der populäre Player VLC, die auf Videoschnitt und -editierung ausgelegte Software VirtualDUB und Avidemux oder der umfangreiche Soundeditor Audacity. Zu den Betriebssystemen mit einem offenen Quellcode gehören sämtliche Distributionen von Linux, das von Google für Smartphones und Tablets entwickelte Android oder FreeBSD, das dank einer sehr liberalen Lizenz zahllose Standards im Bereich der Netzwerktechnik setzte. Auch das von Apple entwickelte Mac OS X stammt in großen Teil von FreeBSD ab, wurde aber stark modifiziert und um weitere, nicht offen lizenzierte Bestandteile ergänzt.

Zusammenfassung

Open Source Software ist für alle Programmierer zugänglich und basiert oft auf Lizenzen der Open Source Initiative. Die Idee wurde durch Eric S. Raymond’s Essay „Die Kathedrale und der Basar“ populär, welcher zwei Organisationsformen gegenüberstellt. Er beeinflusste Unternehmen wie Netscape, den Quellcode für den Netscape Navigator freizugeben, aus dem später Mozilla Firefox entstand.

Die Vorteile von Open Source umfassen eine stärkere Kontrolle des Quellcodes, bessere Sicherheitsmechanismen und erlaubt eine kollaborative Verbesserung. Sie bietet auch einen pädagogischen Nutzen, da der Code von vielen gelesen und gelernt werden kann. Kritiker weisen darauf hin, dass die Offenheit auch Sicherheitsrisiken birgt.

Die Lizenzierung ist ein entscheidender Aspekt für Open Source Software. Sie muss transparent sein und darf die Verwendung oder Verbreitung nicht einschränken. Bekannte Open Source Projekte sind Mozilla Firefox, Linux Kernel und LibreOffice, die jeweils unterschiedliche Lizenzen nutzen, aber alle die Grundprinzipien der Offenheit und Kollaboration verfolgen.

Häufige Fragen und Antworten

Was versteht man unter Open Source?

Open Source Software wird oft auch als quelloffene Software bezeichnet, da ihr Quellcode anders als bei den meisten kommerziellen Programmen öffentlich zugänglich ist und von jedem interessierten Programmierer eingesehen werden kann. Sie wird häufig dadurch definiert, dass sie unter einer von der Open Source Initiative veröffentlichten Lizenz herausgegeben und vertrieben wird.

Welche Vorteile bietet Open Source Software?

Open Source Software bietet sowohl den Programmierern als auch den Anwendern einige entscheidende Vorteile, die von beiden Seiten geschätzt werden. Zum einen ermöglicht sie eine stärkere Kontrolle über den Quellcode und erlaubt es technisch versierten Anwendern, Fehler zu analysieren und Lösungen zu entwickeln. Zum anderen fördert sie eine kollaborative Verbesserung, da viele Personen an dem Entwicklungsprozess teilnehmen können und ihr Wissen und ihre Erfahrung beitragen können. Open Source Software bietet zudem eine höhere Stabilität und Ausfallsicherheit sowie eine größere Flexibilität, um sich den aktuellen Anforderungen anzupassen. Sie dient auch der Aus- und Weiterbildung, da der Code von vielen gelesen und gelernt werden kann.

Welche Lizenzen gibt es für Open Source Software?

Alle Software, die als Open Source veröffentlicht wird, muss mit einer speziellen Lizenz versehen werden, die die Weiterverbreitung regelt. Es gibt verschiedene Lizenzen, die unterschiedliche Rechte und Einschränkungen für die Nutzung und Verbreitung der Software festlegen. Ein bekanntes Beispiel ist die Mozilla Public License, unter der der populäre Browser Firefox herausgegeben wird. Die Lizenzen müssen bestimmte Bedingungen erfüllen, um offiziell als Open Source eingestuft zu werden, zum Beispiel die Verfügbarkeit des Quellcodes und die Gleichbehandlung aller Nutzer.

Bildnachweis: iStock.com/cacaroot


Zurück zur Hauptseite: o
Alle Marken, Warenzeichen, Unternehmens- und Produkt-Bezeichnungen sind mit, aber auch ohne definitive Kennzeichnung, Eigentum des Inhabers der Rechte. Alle aufgeführten Elemente dienen lediglich der informativen Beschreibung.