
Einblicke in die Arbeit von Sovereign Tech Fellow Matthias Klumpp
Von Theresa Röcher
In News, Fellowship
Open Source-Maintainer und Doktorand Matthias Klumpp entwickelte sein Interesse für Linux als Teenager, damals nur mit sehr langsamen Internet, aber einer umso größeren Begeisterung für Computersysteme. Im Interview erzählt Matthias, wie aus seinem Hobby, dem Programmieren, die Verantwortung für die Instandhaltung einer kritischen Infrastruktur für Millionen Menschen wurde und warum starkes Maintainer-Engagement für die Zusammenarbeit in vielfältigen Communitys unerlässlich ist.
Erzähl uns was zu deinem Hintergrund. Wie bist du zu Open Source gekommen?
Den Anstoß dafür, mich als Teenager mit Open Source zu beschäftigen, war mein Interesse für Wissenschaft und dafür, wie Computer funktionieren. Linux weckte meine Neugier und half mir dabei, Betriebssysteme viel besser zu verstehen, einfach weil es Open Source ist. Natürlich wollte ich es dann auch als mein Hauptbetriebssystem nutzen.
Mitte der 2000er war das allerdings gar nicht so einfach: Zuerst hatte ich überhaupt keinen Internetzugang, später dann nur eine sehr langsame Verbindung. Mein Computer war ebenfalls nicht gerade leistungsstark. Im Vergleich dazu war es deutlich einfacher, Software für Windows einfach von einer CD zu installieren, als unter Linux alles neu zu kompilieren und fehlende Abhängigkeiten herunterzuladen. Genau das wollte ich ändern, das Softwaremanagement unter Linux sollte einfacher werden. Zur gleichen Zeit arbeitete der Open Source-Entwickler und Contributor Richard Hughes an PackageKit, mit dem das Linux-Paketmanagement abstrahiert werden sollte, um die Installation und Aktualisierung von Software zu vereinfachen. Ich war von der Idee begeistert, weshalb ich mich dem Projekt anschloss und dadurch C lernte. Dank der durchdachten Code-Reviews des Maintainer-Teams konnte ich mich dabei Schritt für Schritt verbessern. Im Laufe der Zeit weitete sich meine Arbeit auf Betriebssysteme wie Debian und Ubuntu aus. Mit AppStream entwickelte ich ein Tool, das Linux-Systemen die Ausgabe nützlicher Informationen zu Anwendungen erleichtert. Ich beschäftigte mich intensiver mit mehr Freedesktop-Projekten und der Politik dahinter. Dadurch wurde ich schließlich zum Co-Maintainer von PackageKit, einem der Projekte, die mich überhaupt erst zu Open Source brachten. Enorm hilfreich auf diesem Weg war außerdem meine Mitarbeit beim Google Summer of Code, einem weltweiten Onlineprogramm mit Fokus auf die Gewinnung neuer Beitragender für die Entwicklung von Open Source-Software, an dem ich als Teilnehmer wie auch als Mentor mitwirkte.
Im Kern war es meine Neugier darauf, wie Computer funktionieren und wie man Code schreibt – kombiniert mit der Freude am Entwickeln –, die mich in die Welt von Open Source geführt hat. Was mich dort gehalten hat, war vor allem die Offenheit der Community: Geduldige Maintainer*innen wie Richard und viele andere begegneten mir auf Augenhöhe, und auf Konferenzen wie der FOSDEM, DebConf, Akademy oder GUADEC konnte ich die Menschen hinter dem Code persönlich kennenlernen. Obwohl ich ursprünglich nur aus Interesse mitgemacht habe und später sogar Biomedizin studierte, habe ich nie aufgehört, im Open-Source-Bereich aktiv zu sein und schließlich wurde daraus auch ein Teil meines Berufs.
Erzähl uns mehr über die Projekte, an denen du während des Fellowships arbeiten wirst. Warum sind sie wichtig?
Meine Arbeitszeit ist auf mehrere Projekte verteilt, darunter AppStream, Freedesktop und PackageKit.
AppStream ist eine Bibliothek zur Formatierung, Generierung und Auswertung von Metadaten für Softwarekomponenten. Das zentrale Ziel: Entwickler*innen sollen ihre Software so beschreiben können, dass andere nachvollziehen können, wofür sie gedacht ist – und entscheiden können, ob sie sie installieren möchten. Dazu gehören etwa ausführliche Beschreibungen des Einsatzzwecks, Icons, Screenshots und weitere Informationen. Im Grunde so wie das, was man alles auf der Seite eines App-Stores findet. Darüber hinaus stellt AppStream auch Maschinen die nötigen Informationen bereit, um fehlende Komponenten zu erkennen und bei Bedarf automatisch zu installieren. Wenn Nutzer*innen etwa auf ein unbekanntes Dateiformat stoßen, kann das System eine passende Anwendung vorschlagen, um es zu öffnen. Wird neue Hardware angeschlossen, lässt sich automatisch die passende Software oder ein benötigter Treiber installieren. Auch fehlende Sprachpakete können so nachgeladen werden, wenn die Systemsprache geändert wird. Ursprünglich habe ich AppStream für die Paketmanagementsysteme von Linux-Distributionen entwickelt. Inzwischen wird es in einem viel breiteren Kontext eingesetzt – etwa in distributionsübergreifenden Formaten wie Flatpak zur Softwareverteilung. Im Rahmen des Sovereign Tech Fellowship möchte ich die AppStream-Spezifikation weiterentwickeln. Außerdem plane ich, den Parsing-Code der Bibliothek zu verbessern, um die Sicherheit zu erhöhen und AppStream zu einem noch zuverlässigeren Baustein für moderne Linux-Softwaresysteme zu machen.
Freedesktop.org ist ein besonderes Projekt: Es wurde in den frühen 2000er-Jahren als Kollaborations-Plattform ins Leben gerufen, um die Interoperabilität zu verbessern und Technologien zwischen freien Software-Desktop-Umgebungen auszutauschen. Unter dem Dach von Freedesktop.org sind zahlreiche zentrale Projekte und Spezifikationen vereint, etwa für grundlegende Bestandteile wie Anwendungsmenüs, Desktop-Benachrichtigungen oder Icon- und Sound-Sets. In den letzten Jahren ist die Weiterentwicklung der Plattform jedoch spürbar ins Stocken geraten. Beiträge wurden nur noch zögerlich eingebracht, und viele Diskussionen zogen sich über Jahre hin, ohne zu klaren Ergebnissen zu führen. Genau hier möchte ich als Sovereign Tech Fellow und Maintainer der Freedesktop-Spezifikationen ansetzen: Ziel ist es, die Prozesse transparenter, effizienter und einladender zu gestalten. Ein weiterer Fokus liegt darauf, desktopübergreifende Technologien, die aufgrund der stagnierenden Strukturen außerhalb von Freedesktop entstanden sind, wieder systematisch in die Plattform zurückzuführen. Außerdem möchte ich die Freedesktop-Website so gestalten, dass sie besser für Entwickler*innen von Anwendungen mit dem „Linux Desktop“ als Plattform nutzbar ist. Konkret geht es dabei darum, leichter erkennbar zu machen, welche Technologien auf welchen Desktop-Umgebungen verfügbar sind.
PackageKit ist eine Abstraktionsschicht für die Paketverwaltung von Linux-Distributionen. Sie ermöglicht es, distributionsübergreifende Anwendungen zu entwickeln, die über eine einheitliche API auf den jeweiligen Paketmanager zugreifen können, etwa um Software zu installieren oder das System aktuell zu halten. Ursprünglich hatten wir erwartet, dass PackageKit mit dem Aufkommen von Atomic-Distributionen und Containern an Bedeutung verlieren würde. In der Praxis hat sich jedoch das Gegenteil gezeigt: PackageKit ist heute relevanter denn je, unter anderem durch seine umfangreiche Nutzung auf Servern, etwa in Verbindung mit Tools wie Cockpit. Da das Projekt jedoch über Jahre hinweg nur sporadisch gepflegt wurde, besteht erheblicher Nachholbedarf beim Code. Neben umfassender Wartung müssen auch zahlreiche offene Merge-Requests überprüft und integriert werden.
Was hat dich zum Sovereign Tech Fellowship gebracht?
Ich hatte die Sovereign Tech Agency schon länger im Blick, daher fand ich die Ankündigung ihres Fellowship-Programms für Maintainer*innen umso spannender. Gleichzeitig war ich zunächst skeptisch, ob das überhaupt mit meinem bestehenden Arbeitsaufwand vereinbar wäre. Doch die Flexibilität des Programms hat mich überzeugt: Durch reduzierte Arbeitszeiten konnte ich das Fellowship, meine Arbeit an einer Dissertation in den Neurowissenschaften sowie weitere Beratungstätigkeiten miteinander kombinieren. Im Rahmen des Fellowships habe ich noch einmal sehr direkt erlebt, wie herausfordernd Projektwartung im Alltag tatsächlich ist. Bei PackageKit wuchs der Wunsch nach besserem Support, und im Umfeld von Freedesktop war zunehmend Frust spürbar – vor allem, weil es schlicht an Ressourcen fehlte, um lang bekannte Probleme endlich anzugehen. Diese Erfahrungen haben mich letztlich dazu bewogen, mich selbst um das Fellowship zu bewerben.
Wenn es um Freedesktop geht, ist es meines Wissens das erste Mal überhaupt, dass jemand dafür bezahlt wird, explizit an der Wartung der Spezifikationen zu arbeiten (und nicht als Nebenaufgabe eines größeren Projekts). Das ist wirklich spannend, denn was wir brauchen, ist mehr Zusammenarbeit und weniger frustrierte Mitwirkende.
Wir brauchen mehr Zusammenarbeit und weniger frustrierte Mitwirkende!
Was macht die Zusammenarbeit in Open-Source-Projekten für dich besonders, und was gefällt dir am meisten daran?
Eine der größten Herausforderungen in der Open-Source-Zusammenarbeit ist die Vielfalt der Perspektiven. Menschen mit ganz unterschiedlichen Hintergründen kommen zusammen: Mitarbeitende aus verschiedenen Unternehmen mit eigenen Zielsetzungen, langjährige Berater*innen, Studierende sowie Community-Mitglieder aus verschiedensten Ländern und Kulturen. Diese Diversität kann es schwieriger machen, Einigkeit zu erzielen und Projekte voranzubringen. Trotzdem bin ich überzeugt, dass sie bei ausreichend engagierten Maintainerinnen letztlich zu besseren Ergebnissen führt. Der entstehende Code ist robuster, vielseitiger einsetzbar und qualitativ hochwertiger.
Was Open Source besonders macht, ist die Offenheit. Alle können mitmachen. Das macht die Zusammenarbeit oft sehr bereichernd, kann aber auch herausfordernd sein. Dazu kommt, dass sich die Zusammenarbeit nicht nur auf den Code beschränkt. Sie findet auch auf Konferenzen statt, in persönlichen Gesprächen und innerhalb einer Community, die meist ähnliche Werte teilt. Im Mittelpunkt steht dabei die Überzeugung, dass alle verstehen können sollten, wie Technologie funktioniert und wie Computer mit Daten umgehen. Es geht darum, Wissen und Werkzeuge zugänglich zu machen, damit Menschen das volle Potenzial digitaler Systeme nutzen und verstehen können, was hinter dem Code geschieht.
An Code zu arbeiten, der weltweit für so viele Menschen von Bedeutung ist, hat zudem etwas ungemein Erfüllendes.
Eine der wichtigsten Kompetenzen, die neue Open Source-Maintainer*innen entwickeln können, besteht meiner Erfahrung nach darin, „Nein“ sagen zu können – höflich, aber bestimmt. Ich sehe mich in dieser Rolle ein Stück weit wie ein Kapitän: Ich höre der Crew zu, beziehe ihre Sichtweisen ein und fördere die Zusammenarbeit. Aber ich muss auch Entscheidungen treffen. Nicht jede Idee kann umgesetzt werden. Wenn ständig neue Richtungen eingeschlagen werden, ohne dass das Projekt vorankommt, verliert es an Orientierung. Im schlimmsten Fall kommt es komplett zum Stillstand, weil die Crew die Segel ständig einholt und erneut setzt, ohne je in See zu stechen.
Zusammenarbeit geht über Code hinaus: Viele Leute in Open Source Communities teilen ähnliche Werte. Im Mittelpunkt steht dabei die Überzeugung, dass alle verstehen können sollten, wie Technologie funktioniert und wie Computer mit Daten umgehen. Es geht darum, Wissen und Werkzeuge zugänglich zu machen, damit Menschen das volle Potenzial digitaler Systeme nutzen und verstehen können, was hinter dem Code geschieht.
Was machst du, wenn du nicht an Open Source arbeitest?
Wenn ich nicht an Open Source arbeite, findet man mich meist im Labor, in der Elektronikwerkstatt oder am Mikroskop, wo ich an meiner Doktorarbeit arbeite. Eenn ich gerade nicht forsche oder programmiere, bin ich vielleicht unterwegs auf Reisen, übe (sehr langsam) E-Gitarre oder versuche mich im kreativen Schreiben. Eine Einladung ins Theater oder zu einem Musical nehme ich ebenso gern an wie zu langen Wanderungen mit Freund*innen oder einem Skiausflug im Winter.
Vernetze dich mit Matthias
Wir sind dankbar, dass Matthias Teil der ersten Kohorte des Sovereign Tech Fellowships ist und für seine unermüdlichen Beiträge zum FOSS-Ökosystem. Wenn du an Matthias Arbeit interessiert bist, kannst du die unten gelisteten Repositories aufrufen. Du findest Matthias außerdem auf GitHub, Mastodon, Bluesky oder in seinem Blog.

Open source Maintainer, Doktorand und Sovereign Tech Fellow Matthias Klumpp