EN | DE

Goodbye.

Liebe Community,

da die Infrastruktur der Corona-Warn-App heruntergefahren und die Entwicklung eingestellt wird, wird auch CCTG nach ziemlich genau zweieinhalb Jahren Entwicklungszeit nicht mehr weiterentwickelt. Danke, dass ihr bis zum Ende dabeigeblieben seid!

Wir haben noch ein paar Gedanken, die wir mit euch teilen möchten – bezüglich unserer Beziehung zum Projekt Corona-Warn-App, über CCTG höchstselbst, und zuletzt ein paar Dankesworte.

Die Corona-Warn-App ist ein Open-Source-Projekt

Wir glauben, dass das Corona-Warn-App-Projekt eines der ersten Projekte der deutschen Bundesregierung ist, das es ehrlich verdient hat, “open source” genannt zu werden: nicht nur in dem technischen Aspekt, dass der Quellcode offen zugänglich ist, sondern auch im Geiste eines beobachtbaren Entwicklungsprozesses, der die Teilnahme von Außenstehenden ermöglicht.

Bereits von Beginn an hatte das Projekt die Interaktion mit der Community eingeplant und ein Community Management-Team für die Aufgabe einberufen, das Feedback der Community über die verschiedenen Kanäle (die Issue Tracker und Bewertungen in den Stores) entgegenzunehmen und zu beantworten.

Natürlich gibt es auch hier noch Verbesserungspotential. Beispielsweise halten wir den Gebrauch eines zusätzlichen, privaten Issue Trackers für unnötig. Wir verstehen, dass die Issue Tracker auf GitHub vielleicht nicht alle Anforderungen des Projekts erfüllen können, finden aber auch, dass das interne JIRA-System für die Öffentlichkeit hätte zugänglich sein sollen. Weil es nicht öffentlich war, hat sich die Community oft “außen vor” gefühlt, wenn es um wichtige Diskussionen und Entwicklungen ging, obwohl die Communtiy Manager ihr Bestes gegeben haben, neue Entwicklungen hin- und herzuspiegeln. Im Allgemeinen merken wir an, dass der Workflow, die von der Community geöffneten Issues in das interne System zu kopieren, zu redundanter Arbeit und Wartungs-Overhead geführt hat. Wir ermutigen zukünftige Projekte, diese Punkte zu berücksichtigen und sie zu verbessern.

Des weiteren würden wir uns wünschen, dass die Community besser in den Prozess der Entscheidungsfindung bezüglich neuer Entwicklungen der App eingebunden wird und dass technische Spezifikationen früher veröffentlicht werden, sodass die Community hier Verbesserungen und alternative Konzepte vorschlagen kann, bevor die Implementierung beginnt.

Gleichzeitig – und das ist ein sehr guter Vergleich – beobachten wir, dass es bei CovPass kaum Ressourcen für das “Ausleben des Open-Source-Gedankens” gab, was zu Symptomen wie einem nicht-öffentlichen Code Review-Prozess, verzögerten Quellcode-Veröffentlichungen und letztendlich nur sehr wenige Beiträge von Außenstehenden geführt hat.

Gegensätzlich wurden dutzende unserer Beiträge für die Corona-Warn-App entgegengenommen. Wir betonen besonders, dass es ohne einen offenen Entwicklungsprozess nicht möglich gewesen wäre, dass unsere und andere Verbesserungen aus der Community ihren Weg in die Corona-Warn-App finden.

Auf die gleiche Art hat CCTG als Projekt stark davon profitieren können, dass der Quellcode der Corona-Warn-App offen zugänglich und entsprechend lizenziert war. Wäre dies nicht gegeben, wäre CCTG eine ganz andere App geworden, die komplett abgekoppelt unter dupliziertem Arbeitsaufwand entwickelt worden wäre – und wahrscheinlich nicht alle Funktionen hätte bieten können, die die Corona-Warn-App hat.

Ersatz für proprietären Google-Code

Nachdem wir dieses Lob ausgesprochen haben, können wir aber auch unseren größten Kritikpunkt nicht aussparen – nämlich den alleinigen Grund, warum es CCTG gibt: dass die Corona-Warn-App von Googles proprietärer Implementierung von Exposure Notifications abhängt. Wir denken, dass das Projekt der Corona-Warn-App sich leider nie kritisch Gedanken darüber gemacht hat, ob diese Abhängigkeit von proprietärem Google-Code wirklich nötig ist; und wie ihr wisst, haben wir gezeigt, dass dies nicht der Fall ist.

Wir hätten offizielle Unterstützung für Geräte ohne Google Play-Dienste stark bevorzugt, sodass unsere Mühen aus der Community nicht nötig gewesen wären.

Die langfristigen Probleme von CCTG

Eines der Probleme, mit denen wir dauerhaft zu kämpfen hatten, war, dass der Scanner-Dienst auf manchen Geräten ohne erkennbaren Grund vom System gestoppt wurde. Einige Issues, die wir nicht haben lösen können, wurden diesbezüglich im Tracker geöffnet. Theoretisch sollte das Android-System Hintergrunddienste nicht beschränken, wenn Batterieoptimierungen für die App ausgeschaltet sind. Bei den meisten Installationen hat dies auch tatsächlich zu einer ungestörten Verwendung der App geführt. Beim Rest hätte es vermutlich geholfen, einen Vordergrunddienst mit dauerhafter Benachrichtigung zu implementieren (wie sie auch viele andere Apps verwenden, zum Beispiel Element und K-9 Mail) oder zu ermöglichen, dass dieser manuell aktiviert wird.¹

Zusätzlich wäre es nützlich gewesen, wenn wir einen Migrationsweg geschaffen hätten für den Wechsel zwischen internem und externem microG. Ohne diese Möglichkeit konnten Installationen, die zuvor internes microG verwendet hatten, nicht mehr auf ihre davor gesendeten und gesammelten IDs zugreifen, wenn externes microG auf dem System installiert wurde.

Ein Problem außerhalb unseres Einflusses war der SafetyNet-Mechanismus, der erforderlich war für die Umfragen bei einer roten Risikokarte, die Datenspende und seit Neustem auch für das Warnen von Anderen ohne Testergebnis in der App. Trotz dessen, dass SafteyNet nicht wirklich als Anti-Missbrauch-Tool geeignet ist, ist es doch relativ anstrengend zu umgehen; wir haben dafür keine Client-seitige Implementierung ausgeliefert. Nachdem neue Teststellen sich ab Mitte 2022 nicht mehr für die Übertragung von Testergebnissen in die App registrieren konnten, konnten viele Nutzer:innen von CCTG dann nicht mehr Andere warnen.

Unser besonderer Dank

Zu guter Letzt wollen wir denjenigen Danken, die am Projekt beteiligt waren.

Wir richten unseren Dank an die Community-Mitglieder, die im microG-Repository aktiv waren. Insbesondere sind wir Elsensee sehr dankbar für die Entdeckung eines Fehlers in der Risikoberechnung im Code von microG.

Des Weiteren möchten wir den Aktiven in unserem Issue Tracker sowie in unserem Matrix / XMPP-Raum danken. Gleichermaßen danken wir der weiteren Community der Corona-Warn-App für die Beteiligung in deren Repositories und Issue Trackers sowie im COVID apps Slack. Ganz besonderer Dank geht an Ein-Tim, ein aktivstes Community-Mitglied² – er weiß alles über das Projekt und ist jederzeit bereit, jegliche Frage innerhalb von Sekunden zu beantworten.

Außerdem danken wir den Entwickler:innen und Community Manager:innen sowie anderen Mitgliedern des Corona-Warn-App-Projektteams bei SAP, T-Systems und beim RKI. Im Speziellen danken wir d4rken für das Vorantreiben des Open-Source-Gedankens innerhalb dieses Teams und Heinezen für die gelegentliche Beantwortung von ein oder zwei Fragen in unserem CCTG-Chatroom.

Letztendlich danken wir noch unseren Spender:innen, die das CCTG-Team – Fynn, Bubu und larma – finanziell unterstützt haben. Danke an alle, die die App ihren Freund:innen beworben haben, die QR-Codes zum Check-In bei Veranstaltungen bereitgestellt haben, die andere bei einem positiven Testergebnis gewarnt haben, die sich die Mühe gemacht haben, nötigenfalls die TAN-Hotline anzurufen, die sich beim Erhalt einer roten Risikowarnung verantwortungsbewusst verhalten haben und, im Allgemeinen, danke an alle, die unsere App benutzt haben.

Vielen Dank euch allen für eure Bemühungen, Infektionen zu vermeiden.

Herzliche Grüße,
Corona Contact Tracing Germany.


¹ microG ist so implementiert, dass ein Vordergrunddienst mit persistenter Benachrichtigung benutzt wird, wenn ein automatischer Mechanismus erkennt, dass dies nötig ist.

² Seit Anfang 2023 ist Tim beim RKI – herzlichen Glückwunsch!


🎲: 📖 🥚 🐦