Modulare Webentwicklung mit Drupal

Warum Open Source Contribution so wichtig ist

Blog

Kontakt

publicplan GmbH

Kennedydamm 24
40476 Düsseldorf

Tel +49 (0)211 635501-80
Fax +49 (0)211 635501-89

infoatpublicplan.de ()

Warum Open Source Contribution so wichtig ist

Autor
Christina Zimmermann
Datum

Open Source ist nicht nur eine Beschreibung für Software – Open Source kann Zeitgeist, Spirit und Lebensgefühl sein. Der Appell „Make things open – it makes them better“ verspricht offene Kollaboration und Verbesserung von Softwareprodukten. Weltweit laufen auf der Open-Source-Plattform Drupal bereits mehr als 5 Millionen Websites und es kommen täglich neue hinzu. Das ist insbesondere auch durch die Drupal-Community zu erklären. Ein Plädoyer für die Open Source Contribution mit kurzem Ausflug in das Lizenzrecht dieser freien Software.

Mehrere Hände schieben Puzzleteile zusammen.
© Rido - stock.adobe.com

 

Open Source bezeichnet kostenfreie Software, deren Quelltext nicht nur öffentlich ist, sondern auch von Dritten kopiert, geändert und genutzt werden kann. Sie verbessert sich kontinuierlich durch das Mehraugenprinzip und die Aufgeschlossenheit für verschiedenste Ideen. Drupal ist eines der beliebtesten Content-Management-Systeme weltweit und verfügt über eine große Community, die ununterbrochen daran arbeitet, die Software zu verbessern und neue Entwicklungen in das Forum zurückzuspielen. Im Gegensatz zu proprietärer Software großer Konzerne besteht durch die Community-Partizipation weitestgehend Unabhängigkeit. Open Source lebt von dieser Contribution. Es lohnt sich, sich zu beteiligen!

Kennen Sie ein gutes Rezept?

Man stelle sich Folgendes vor: Sie sind häufiger zum Essen eingeladen und merken, dass weder Ihnen noch Ihren Kollegen die Speisen so recht munden. Einerseits könnten Sie dem Gastgeber vorschlagen, etwas anderes zu kochen. Andererseits könnten Sie Ihr bestes Pizzarezept auch allen und nicht nur dem Gastgeber zur Verfügung stellen. Gemeinsam überlegen sie, wie Sie das Gericht verbessern. Ihre Kollegin hat eine Nussallergie, ihr Kollege kann Spinat gar nicht leiden? Das ist kein Problem, denn Sie können ihr Grundrezept allein oder auch gemeinsam nach den eigenen Bedürfnissen und Wünschen weiterentwickeln. Dass Sie für Ihren Pizzateig noch etwas Hefe verwenden sollten, hat Ihnen Ihr Kollege noch schnell mit auf den Weg gegeben, nachdem er ihr Rezept gesehen hat. Gemeinsame Kochabende, ein breiteres Rezeptrepertoire und mehr Know-How sind die Folge. Genau so funktioniert die Open Source Contribution.

Kann man selbst zum Contributor werden?

Die Drupal-Community ist offen für jede Form der Partizipation. Neben der Fehlerbehebung oder der Entwicklung von neuen Modulen ist stets auch Dokumentation, Testing oder Unterstützung bei Design oder Usability  möglich - auch ohne Programmierkenntnisse. Jeder Beitrag zählt!

Was ist zu beachten, wenn man Code oder andere Inhalte veröffentlichen möchte?

Es gibt grundsätzlich keine Verpflichtung, Quellcodes offenzulegen. Dies gilt insbesondere für den Betrieb von eigenen Webseiten. Dennoch hat der Nutzer in der Regel zwei Lizenzvereinbarungen zu berücksichtigen.

Das Prinzip der Vier Freiheiten („Four Freedoms“)

Richard Stallmann, Gründer der Freien-Software-Bewegung, entwickelte die Maxime der vier Freiheiten, die den Nutzern von freier Software, freien Inhalten und anderen freien Werken eingeräumt werden. Die erste „primäre“ Freiheit zeichnet sich dadurch aus, ein Werk für jeden Zweck einsetzen zu dürfen. Die zweite „wissenschaftliche“ Freiheit garantiert den Anspruch, ein Werk untersuchen zu dürfen, um es den eigenen Bedürfnissen anzupassen. Die dritte „soziale“ Freiheit besagt, dass das Werk weiterverbreitet und vervielfältigt werden darf. Die vierte „konstruktive“ Freiheit sagt aus, dass ein Werk verbessert werden kann und die Verbesserungen zugunsten des Allgemeinwohles zugänglich gemacht werden können. Insbesondere weil das deutsche Urheberrecht die Aushebelung der eigenen Nutzungsrechte nicht kennt, tragen die folgenden Lizenzvereinbarungen dazu bei, den Geist freier Software in den Dienst der Allgemeinheit zu stellen.

GNU General Public License

Die GNU General Public License (GNU GPL) ist die weltweit bedeutendste und am weitesten verbreitete Lizenz für freie Software. Sie trägt dem freien Austausch von und dem Zugang zu Wissen Rechnung und der Maxime, dass eine gemeinsame schöpferische Leistung der gesamten Community vorausgegangen ist. Die Lizenz ist eine Abkehr vom Grundsatz des ausschließlichen Nutzungsrechts der/s anfänglichen (Software-)Urheber(s). Alle Beitragenden behalten zwar ihr Urheberrecht, müssen aber im Falle einer Code-Veröffentlichung oder Bereitstellung zum Download ihren Code ebenfalls nach den Bestimmungen der GNU GPL veröffentlichen. Dries Buytaert, Schöpfer der ersten Drupal-Software, entschied 2001 schließlich selbst, seinen Code unter den Bestimmungen der GNU GPL zu veröffentlichen. Damit machte er den Weg frei für die Drupal-Contribution - auch anderen sollte die Chance gegeben werden, Software zu nutzen und weiterzuentwickeln. Gleichzeitig gibt es jedoch keine Verpflichtung, (modifizierte) Software zu veröffentlichen - es ist ein Angebot.

Der Anwendungsbereich der GNU GPL bezieht sich auf alle veröffentlichten Quellcodes. Nicht umfasst sind andere Inhalte, wie z. B. Kommentare, Dokumentation oder Ähnliches, die keinen Code enthalten. Diese Inhalte richten sich nach der Creative Commons Lizenz „Attribution Share Alike“ (siehe unten). Die GNU GPL erfasst außerdem weder Daten oder Code, die ihrerseits zwar in PHP, JavaScript usw. verfasst sind, aber lediglich „eingegeben“ und durch die Software verarbeitet werden. Der Code einer eigens betriebenen Website nach GNU GPL-Gesichtspunkten wird nicht als Distribution gewertet, d.h. der eigene Code muss nicht offengelegt werden, solange er nicht zum Download bereitsteht.

Wird Code veröffentlicht, also zum Download zur Verfügung gestellt, muss diesem der einschlägige Lizenztext und Quelltext in angemessener Weise beigefügt oder zugänglich gemacht werden. Ein angemessener Copyrightvermerk und ein Haftungsausschluss (wenngleich Letzterer nach deutschem Recht als unwirksam anzusehen ist und deutsches Zivilrecht Anwendung findet) sind ebenfalls erforderlich. Mittlerweile ist die GNU General Public License 2007 bei ihrer dritten Version angelangt (GPLv3).

Bei Weitergabe des gedownloadeten und vielleicht sogar bearbeiteten Codes besteht die Verpflichtung, die „neue“ Software ebenfalls unter der gleichen GNU GPL zu veröffentlichen, bzw. sich an diese Bestimmungen zu halten (sogenanntes „Copyleft“). Diese nachgelagerte Arbeit liegt dann vor, wenn der ursprüngliche Code entweder verändert wurde oder ein neuer Code mit dem ursprünglichen insoweit kombiniert wird, dass sich beide Teile zu einem neuen Ganzen verbinden lassen. Copyleft hat das Ziel, dass die veränderte Software nicht mit Nutzungseinschränkungen weitergeben wird, die die Ursprungssoftware initial erst gar nicht besessen hat. Somit verkörpert selbst das Lizenzrecht den Open-Source-Gedanken, indem es verhindert, dass ursprünglich freie Inhalte zur Basis proprietärer Inhalte werden.
 
Im deutschen Rechtsraum wird die GNU GPL wie das Vorliegen Allgemeiner Geschäftsbedingungen betrachtet. Daher muss der Empfänger freier Software auch die Möglichkeit haben, von den Bestimmungen der GNU GPL Kenntnis nehmen zu können.

Creative Commons Lizenz “Attribution ShareAlike”

Diese Lizenz ist das Pendant zur GNU GPL. Sie bezieht sich auf die Inhalte auf Drupal.org, welche nicht Code sind und somit nicht von der GNU GPL erfasst werden. Hierzu zählt alles von der Dokumentation bis zum Kommentar. Auch hier behalten alle Mitwirkenden das Urheberrecht an ihren Inhalten. Durch die Nutzung von Drupal.org stimmen sie jedoch zu, dass der Inhalt in den Medien vervielfältigt, verbreitet und verändert werden darf, soweit Quellenangabe und Link zur Lizenz in der jeweiligen Version beigefügt werden. Es handelt sich also ebenfalls um eine Copyleft-Lizenz. Sie existiert derzeit in ihrer dritten Version.

Warum sich Open Source Contribution für die Verwaltung lohnt

Open-Source-Software liefert maßgeschneiderte Lösungen für den Anwender - gerade auch in der öffentlichen Verwaltung. Derzeit gibt es fast 45.000 verschiedene Module für Drupal, die nicht in der Grundversion von Drupal erhältlich sind, sondern durch die Programmierleistung der Community entstanden sind. So lässt sich die Drupalseite individuellen Bedürfnissen anpassen, ganz gleich, ob es um die Kompatibilität mit GoogleAnalytics, CAPTCHA, unterschiedliche Menüansichten oder einfache Share-Button geht. Dies ist nur möglich durch genügend Interaktion. Drupal.org ist hierfür die richtige Plattform.

„Viele Köche verderben den Brei (oder den Pizzateig)“ - diesen Spruch möchte niemand aus der Drupal-Community hören. Vielmehr ermöglichen das geordnete Mehraugenprinzip und die verschiedenen Rollen innerhalb der Issue Queue die Perfektion der Drupal-Software und -Module. Diese Teilhabe hilft allen, denn die Drupal-Community ist dafür bekannt, eigenständig Software zu reparieren, zu testen, zu verbessern und zu pflegen - ein Geben und Nehmen. Über die Hälfte der Mitglieder der Drupal-Community gibt diese Gegenseitigkeit als Motivation an. Die ständige Optimierung der Software und die Teilhabe verschiedenster Experten weltweit sorgt zudem für hohe Sicherheit und Qualität und eliminiert Sicherheitslücken des Systems, während man sich ganz nebenbei ein eigenes Expertennetzwerk aufbaut.

Vor allem die Abwechslung und der Mitmachfaktor helfen dabei, Bugs zu finden, zu reparieren oder ein ganz neues Modul zu entwickeln. Dadurch minimieren sich Reaktionszeiten, die andere Softwareanbieter für sich einnehmen. Derjenige, der online ist und gerade weiterhelfen kann, tut es - darauf ist Verlass. Durch den (selbst)ständigen Austausch, und manchmal eben auch durch das Prinzip „trial and error“, erhöht sich auch nebenbei der eigene Lernfaktor.

Dokumentation ermöglicht neuen Entwicklern und Mitarbeitern, an entstandenen Code anzuknüpfen und neuen Stoff zu erlernen. So entsteht eine Wissensplattform - ein „Learning Environment“ - für alle Mitarbeiter. Wenn ein Entwickler das Unternehmen verlässt, endet die Nutzbarkeit des von ihm entwickelten Programms nicht nach absehbarer Zeit, da die aktive Community es weiter pflegt und dokumentiert. Außerdem erhalten Entwickler aus der Community standardisierten Code, der ein effizienteres Arbeiten ermöglicht - ein großer Unterschied zu proprietärer Software! Wissen, Produktivität und Schnelligkeit steigen: Ein nicht zu unterschätzender Wettbewerbsvorteil.

Ständige Erreichbarkeit der Community, schnelle Reaktionszeiten, Abwechslung, Spaß und maßgeschneiderte Lösungen bringen vor allem eines: Zeit und Freiheit - innerhalb und außerhalb der Verwaltung. Die publicplan GmbH hat es sich daher zur Aufgabe gemacht, das Produkt deGov, ein auf Open Source - genauer Drupal - basierendes CMS, ständig weiterzuentwickeln und seinen eigenen Beitrag zur Drupal-Community zu leisten. Contribution lohnt sich - starten Sie jetzt auch auf Drupal.org!

Genügend Case-Studies sind auf https://www.drupal.org/case-studies erhältlich - ebenso warum sich publicplan dazu entschieden hat, Drupal zu nutzen.

Wenn Sie mehr zum Thema erfahren möchten, schauen Sie in unserem Blog vorbei. Unsere Autoren liefern hier regelmäßig aktuelle News zum Thema Drupal in der Verwaltung.