Unser Spendenansatz zum diesjährigen Weihnachtsfest.

Foto von der Weihnachtskarte

Auch wir spenden im geschäftlichen Umfeld zu Weihnachten, anstatt zu schenken. Sinnvoll sollte die Spende aber sein, also einem guten Zweck dienen. Hier wird es dann spannend, denn die Auswahl an möglichen Spendenorganisationen und -empfängern ist riesig. Eine entsprechende Google-Suche zum Stichwort »Weihnachtsspende« brachte alleine 135.000 Ergebnisse hervor.

Hierunter finden sich großartige caritative Einrichtungen, aber eben auch so viele, dass eine Auswahl eigentlich nur dem Zufallsprinzip folgen kann, was für uns aber kein gutes Geschäftsprinzipo ist. Als IT-Beratungsgruppe sollte unsere Spende auch »irgendwie technologisch« sein und vielleicht auch mal den Fokus auf andere problematische oder übersehene Bereiche, für die eine finanzielle Zuwendung sinnvoll ist, lenken.

Da wir Open-Source-Software (»OSS«) nicht nur selbst einsetzen, sondern auch in unseren Projekten propagieren, wissen wir, dass sie einerseits die Grundlage des Internets und unserer heutigen, von Software dominierten Welt ist und es andererseits in diesem Umfeld durchaus problematische und übersehene Bereiche gibt.

Die 2,5 Milliarden aktiven Android-Geräte in 2018 bedeuten beispielsweise entsprechend viele Installationen des Linux-Kernels, denn das Android-Betriebssystem basiert auf eben dieser Open-Source-Software. Doch das ist nur die Spitze des berühmten Eisbergs. Mittlerweile haben viele Nutzer bereits mehrere unterschiedliche Browser auf ihren verschiedenen Computern und Handys parallel installiert, die alle OSS-Komponenten einsetzen, wie die Datenbank SQLite zum Beispiel. Diese kommt dadurch auf unglaubliche 1 Billion aktive Nutzungen.

Open-Source-Software ist also das Rückgrat unserer softwarebasierten Infrastruktur, ähnlich den Brücken und Straßen in unserem Land, wie eine entsprechende Untersuchung der Ford Foundation schon 2016 sehr treffend formulierte.

Anders als diese physikalische Infrastruktur entsteht das Open-Source Rückgrat unserer digitalen Welt allerdings häufig im privaten Kontext von Freiwilligen, welche aus Leidenschaft und ohne wirtschaftliche Motivation ihre Entwicklungen der Allgemeinheit zur Verfügung stellen. Davon aber eben auch nicht leben können und so kritische Infrastruktur von Einzelkämpfern in Nacht- oder Wochenendschichten – neben anderen Jobs – bereitgestellt wird. Wie die OpenSSL-Programmbibliothek beispielsweise, welche geschätzte ⅔ des gesamten Internetverkehrs verschlüsselt. Ein lange unentdeckter Fehler in dieser OSS-Komponente führte zum berühmten Heartbleed-Bug, welcher sogar eine eigene Wikipedia-Seite hat, da durch ihn weite Teile der Verschlüsselung privater Daten im Internet anfällig für Angriffe war. Nicht, dass dies nicht auch bei kommerzieller Software passieren würde; es spricht eher für den Entwickler, der OpenSSL lange Zeit weitestgehend alleine gepflegt hat, dass der Fehler so lange unentdeckt blieb. Die Frage ist aber doch, ob wir die Verschlüsselung eines Großteils unserer Daten im Internet vom Einsatz eines einzelnen und dafür auch noch unbezahlten Menschen abhängig machen wollen?

Da Open-Source-Software Entwickler in der Regel mit großer Leidenschaft an ihre entsprechenden Projekte gehen, gleichzeitig ihre Arbeit naturgemäß sehr transparent, eben offen ist und zum Teil auch viel davon abhängt, ist der Druck in diesem Bereich häufig groß. So groß, dass auch das Thema Burnout hier immer offener diskutiert wird, also offensichtlich immer weiter um sich greift.

Dazu kommt, dass auch im Umfeld von OSS, wie leider mittlerweile üblich im Internet, Hatespeech und Flamewars an der Tagesordnung sind. Ein Großteil der Open-Source-Software-Entwicklung erfolgt über Github. Änderungsanforderungen erfolgen dort unter anderem über sogenannte Pullrequests. In deren Kommentarbereichen geht es wiederum häufig nicht anders zu, als in denselben eines beliebigen Influencers auf Instagram. Das geht sogar bis zu Morddrohungen an Daniel Stenberg, dem Entwickler von »libcurl«, einer Open-Source-Software-Komponente, welche zur Datenübertragung in Netzwerken genutzt wird und als eine der meist verwendeten Software-Bibliotheken gilt. Auch diese Software wurde übrigens lange Zeit von ihm alleine gepflegt.

Ein weiteres Risiko in diesem Umfeld ist die sogenannte »Dependency Hell«, welche dadurch entsteht, dass die Software, die man einsetzt, in der Regel auch wieder auf anderen OSS-Komponenten basiert, welche wiederum andere Open-Source-Software einbindet … Wie der Fall eines bis dahin unbekannten Open-Source-Software Entwicklers 2016 zeigte, der aufgrund von rechtlichen Auseinandersetzungen seine nur 11 Codezeilen umfassende Open-Source-Software-Komponente »left-pad« zurückzog und damit fast “das Internet kaputt gemacht hat”.

Zusammengefasst und überspitzt formuliert muss man sich das, um den Titel der oben genannten Studie aufzugreifen, vorstellen, als ob alle Brücken der Welt ein kleines, tragendes Bauteil enthielten, welches von einem einzigen, vielleicht auch noch überarbeiteten Menschen, der dem Burnout nahe ist und gerade auch noch mit Morddrohungen zu kämpfen hat, freiwillig und kostenlos bereitgestellt würde. Klingt nicht sehr stabil, ist im Internet und da, wo Software zum Einsatz kommt, aber ein Teil der Realität.

Wer also beispielsweise mit dem Handy telefoniert, E-Mails oder WhatsApp-Nachrichten verschickt, im Internet surft oder Videos streamt, wird mit Open-Source-Software in Berührung kommen, die eventuell von so einem Programmierer irgendwo auf der Welt am Laufen gehalten wird. Wir finden, Weihnachten ist eine gute Gelegenheit, auch mal diesen etwas anderen, »stillen Helden« für ihren Einsatz zu danken.

Die atra.consulting-Gruppe spendet diese Weihnachten per Gitub Donors an RubyGems, dem Paketsystem für die Verwaltung und Verteilung von Programmbibliotheken der Programmiersprache Ruby. Die Paketverwaltung stellt für jede Programmiersprache eine besonders kritische Infrastrukturkomponente in der sogenannten Software Supply Chain dar. RubyGems ist dadurch regelmäßig das Ziel von Hacker-Attacken, wie beispielsweise gerade auch wieder npm, das populäre Pendant der JavaScript-Welt. Da die größeren und bekannteren OSS-Komponenten in der Regel mittlerweile auch schon mehr Unterstützung erfahren, haben wir uns bewusst dazu entschieden, dieses Jahr diese vielleicht etwas unbekanntere Open-Source-Software-Komponente zu unterstützen.