Die psychosoziale Beratung durch Dienste der Caritas gehört zu den umfangreichsten in Deutschland. Seit mehr als zehn Jahren gibt es neben physischen Beratungsstellen auch eine Online-Beratung, die (mehr und mehr) „blended counseling“ ermöglicht. Gerade in den letzten zwei Jahren ist das System konzeptionell, technisch und organisatorisch mit erheblichem Aufwand weiterentwickelt worden. Ende Juni 2020 hat der Deutsche Caritasverband e.V. nun das umfangreiche Software-Projekt unter einer Opensource-Lizenz veröffentlicht: der Quellcode der Software ist nun für jedermann zugänglich, freigegeben zum Kopieren und Verändern. Das ist ein sehr großer Schritt für die Caritas, vielleicht auf den ersten Blick auch ein ungewöhnlicher (dazu auch ein Kommentar von Benedikt Geyer).

Umso wichtiger ist es, die Motivationen und Hintergründe darzustellen. Sie lassen sich womöglich auf einige andere Projekte übertragen. Im weiten Feld der Freien Wohlfahrt wird viel mehr Software entwickelt, als man denkt. Und obwohl es meistens keine kommerziellen Verwertungsinteressen gibt, ist die Software „closed source“, unter Verschluss. Ein enormes Potential für Zusammenarbeit und ein ungemeiner Mehrwert für das Gemeinwohl schlummern noch.

Hintergrund: Was ist Opensource?

Um zu verstehen, was mit „Opensource“ gemeint ist, auch um einige Missverständnisse zu vermeiden, lohnt es sich, sich mit Grundprinzipien von Opensource auseinanderzusetzen. Manche Ziele („Wohl der Allgemeinheit„) und Herangehensweisen von Opensource-Communitys haben überraschende Ähnlichkeit mit denen in der Freien Wohlfahrt.

Im engeren Sinn meint Opensource-Software die nicht-kommerzielle Verfügbarkeit des Quellcodes (wo Gebühren verlangt werden, handelt es sich nicht um Lizenzgebühren,  sondern nur Bereitstellungskosten eines Anbieters). Jede:r darf also den Code kopieren (z.B. von einem Server laden), nutzen, seine oder ihre Kopie verändern und wieder veröffentlichen. Ideologisch stehen die Freiheiten von Programmierer:innen und Anwender:innen im Zentrum, ihre Werkzeuge und Produkte auch gestalten zu können.

Im weiteren Sinn bezieht sich Opensource auch auf die Verfahren (oder sogar Haltung), Software in hohem Maß kollaborativ weiterzuentwickeln. Ermöglicht wird das durch feste Regelwerke, die Lizenzen, unter denen ein Projekt veröffentlicht wird und wodurch keine weitere Genehmigung der ursprünglichen Softwareeigentümer mehr erforderlich ist. Außerdem werden eine Reihe von technischen und organisatorischen Errungenschaften genutzt, allen voran das Internet und seine Plattformen. Sie machen es z.B. sehr einfach, dass viele Entwickler parallel Veränderungen in ihren lokalen Kopien vornehmen und diese sich gegenseitig oder einem Hauptprojekt als Verbesserungen vorschlagen können (sog. pull request). Auf diese Weise können lose Kollektive ihre Kräfte bündeln (crowd sourcing, aus dem ehrenamtlichen Engagement ist uns das vertraut!). Die Caritas hat ihre Software z.B. auf der Plattform GitHub.com veröffentlicht.

Im Zentrum von Opensource stehen die verwendeten Lizenzen, die regeln, welche Arten von Veränderungen und vor allem Veröffentlichungen erlaubt oder auch gefordert sind. Dabei haben sich eine Hand voll Lizenzen herausgebildet, die häufig eingesetzt werden und daher mit ihren speziellen Absichten und Einschränkungen bekannt sind. Versierte Entwickler:innen wissen auf einen Blick woran sie dabei sind, auch ohne Rechtsberatung – das ist ebenfalls ein wichtiger Aspekt für eine niederschwellige Zusammenarbeit. Grundsätzlich können alle möglichen Arten von Lizenzen neu erdacht werden, die Opensource auf eine bestimmte Weise umsetzen. Die Open Source Initiative (OSI) versucht deshalb einheitliche Standards für Lizenzen festzulegen. Allerdings wird dadurch das Projekt für andere weniger einfach zugänglich.

Die Caritas Online-Beratungsplattform ist unter der AGPL 3.0 veröffentlicht. Diese Lizenz fordert, dass von allen veränderten Versionen der Quellcode von ihren jeweiligen Autor:innen ebenfalls veröffentlicht werden muss, sobald sie auf einem Webserver öffentlich betrieben wird (was ja das typische Format für eine Beratungsplattform ist).

Motivation: Nutzen für die Wohlfahrtsverbände und darüber hinaus

Durch die Veröffentlichung des Quellcodes wollen wir verschiedene Vorteile für alle Verbände der Freien Wohlfahrt erzielen:

Bedeutung der Community

Während Opensource im engeren Sinn die Veröffentlichung des Quellcodes meint, entstehen viele der erwähnten Vorteile erst durch die Zusammenarbeit mit vielen anderen Akteuren, der Community. Die unterschiedlichen Akteure können dabei verschiedene Aufgaben übernehmen, wovon Beiträge zur Code-Basis, das eigentliche Programmieren, nur ein Teil ist (wenn auch ein wichtiger). Die folgende Grafik soll gleichzeitig einige Prinzipen deutlich machen, die einer Zusammenarbeit auf Opensource-Basis zu Grund liegen.

Eine Grafik zeigt Rollen und Zusammenhänge zwischen verschiedenen Akteuren in einer (idealen) Opensource-Community für die Online-Beratungsplattform

In der Grafik ist links oben der eigentliche Betrieb der Beratungsplattform abgebildet, der vollständig in der Verantwortung und Kontrolle der Caritas liegt: Ein technischer Dienstleister installiert die Software und betreibt sie im Auftrag der Caritas. Die Software, die dabei zum Einsatz kommt, wird von einer Community weiterentwickelt – daran beteiligt sich die Caritas mit Hilfe eines  technischen Dienstleisters. Genau die gleiche Software kann auch ein anderer (ausreichend technisch versierter) Akteur kopieren, auf seinem Server installieren und betreiben. Akteur XY hat sich aber ein Video-Modul dazu bauen lassen, das die Ursprungsversion nicht hatte. Damit hat Akteur XY einen neuen Zweig („fork“) eröffnet. Die Caritas kann nun (mithilfe ihres Dienstleisters) prüfen, ob das Video-Modul ihren technischen und sicherheitstechnischen Anforderungen genügt und ob es in ihre Strategie für die Software passt – und im positiven Fall das Video-Modul auch in ihre Code-Basis übernehmen. Spätere Akteure können sich nun entscheiden, ob sie die Software der Caritas oder von Akteur XY verwenden. Typischerweise werden die Akteure, also auch XY, versuchen eine lebendige Community um ein Hauptprojekt zu etablieren, in dem sich alle wesentlichen Verbesserungen wiederfinden und um das herum sich die Diskussionen der Community drehen. „Community Mitglied“ ist kein regulierter Begriff, im Prinzip gehören alle dazu, die die Software herunterladen oder auch nur einen Kommentar auf GitHub schreiben. Diese Community kann gepflegt werden und sich Regeln geben, aber hat keine Zugangsbeschränkungen im engeren Sinn (etwa Mitgliedschaften oder Gebühren) – auch das ist aus der Arbeit mit Ehrenamtlichen bekannt.

Während also jeder Akteur seine Version der Software einsetzt und für seinen Server und Betrieb verantwortlich ist, kann die Software – sogar in unterschiedlichen Varianten! – gemeinsam weiterentwickelt werden.

Ausblick

Wegen der Ähnlichkeit der Ziele, der Möglichkeit, die allzu oft stark beschränkten Mittel zu bündeln, oft auch dem Einsatz öffentlicher Gelder erscheint es naheliegend, dass Software für gemeinnützige Zwecke von gemeinnützigen Trägern viel mehr und vielleicht sogar grundsätzlich im Quellcode veröffentlicht werden (ebenfalls kommen natürlich die Vorteile von Opensource zum Tragen, die sich nicht auf Gemeinnützigkeit stützen). 69% der größeren Unternehmen in Deutschland setzen bewusst Opensource Software ein, mit Schleswig-Holstein hat sogar ein ganzes Bundesland Opensource Prinzipien in seine IT Strategie aufgenommen.

Darüber hinaus werden neue Formen der Zusammenarbeit möglich, die nicht voraussetzen, sich zuvor in allen Fragen abzustimmen: Jederzeit besteht die Möglichkeit, einzelne Module in der eigenen Version auszutauschen oder im Extremfall komplett eigene Wege auf Basis des erarbeiteten Codes zu gehen. Kräfte bündeln zu können, ohne vorher große und vielgestaltige Verbandsstrukturen aufeinander abstimmen zu müssen und dabei Mehrwert für die Allgemeinheit zu schaffen – das ist das Potential, das es zu nutzen gilt.