Version 4 (modified by sven, 7 years ago) (diff)

--

Transparente Versionsverwaltung, ein Plädoyer

Die Technikum29-Website verwendet seit fast 10 Jahren (2008-2017) erfolgreich die zentrale Versionsverwaltung Subversion. Diese Software hat sich damals als Favorit zwischen anderen Techniken wie einem CMS oder einer Wiki durchgesetzt (siehe drei Jahre Versionszählung, 2008) und beerbt den 2005-2008 betriebenen, öffentlich einsehbaren Changelog. Damit lässt sich die Webseitengeschichte seit 12 Jahren punktuell nachverfolgen. Doch warum all der Aufwand, noch dazu öffentlich für jeden einsehbar? Dieser Frage soll dieses Dokument begegnen.

Versionszählung

Das Zählen von Versionen hat in der Softwareentwicklung eine lange Tradition. Das verbreitete Versionverwaltungstool der Mitte 200er, Subversion, zählte an zentraler Stelle die hochgeladenen Änderungen einfach hoch (mittlerweile sind wir bei technikum29.de schon bei über 1000 auf diese Weise gezählte Änderungen). Während viele Kollaborationswerkzeuge der Open-Source-Welt entspringen, ist die Verwendung dieser Techniken doch a priori nicht mit einer Veröffentlichung des Repositories verbunden. So pflegen viele Institutionen private Subversion-Repositories zur Closed-Source-Entwicklung.

Open-Source-Veröffentlichungskultur bei Webseiten

Tatsächlich war technikum29.de 2005 Vorreiter mit der Öffentlichstellung des kompletten Quellcodes der Website. Damals war noch nicht abzusehen, dass mit dem Aufkommen der Versionszählungskultur in Form von verteilten Versionsvewaltungstools, allen vorran das von Linus Torvalds entwickelte git ein unheimlicher Boom vorrangeht bis hin dazu, dass es völlig selbstverständlich wird, Dateien in derartigen Repositories zu organisiseren, vor allem kostenlos. Anfang der 2000er waren kostenlose Webhostingangebote typischerweise durch Einblendung von Werbung finanziert und boten wenige 10-100 MB Speicherplatz. Mit dem Aufkommen von kostenlosen Cloudanbietern und vor allem Github sollte sich das massiv ändern: Heute hosten diese Dienste ohne Werbeeinblendung und kostenfrei jedem Benutzer viele Gigabyte an statischen, allerdings in Form ein Git-Repositories organisierten Daten. Besonders in den letzten Jahren ist dabei eine Renaissance der statischen Webseite zu beobachten die direkt von Github aus ausgeliefert wird. Dabei ist der Quelltext und die Historie dieser Seite für jedermann einsehbar.

Die Cloud vergisst nie

Die Omnipräsenz von Versionsspeicherungen sind zweifelsfrei dem günstigen Speicherplatz und den großen Softwarearchitekturen geschuldet, auf denen die "Cloud-Welt" von heute aufbaut. Ein Filehoster wie Dropbox (derzeit 5GB Gratisspeicherplatz pro Benutzeraccount) speichert automatisch jede Version einer veränderten Datei. Open-Source-Clones von Dropbox die diese Technik ebenfalls verwenden (zB. Sparkleshare) nutzen dazu Git. Tatsächlich sind aber damit nicht nur private Dateien vor dem Vergessen geschützt. Man kann viel mehr davon ausgehen, dass jede im World Wide Web veröffentlichte Datei, ob Webseite, Bild oder PDF, irgendwo gespiegelt wird. Prominente Beispiele von Seiten, die diese Spiegelungen ihrerseits wieder hosten, sind der Google-Cache der profitorganisierten Suchmaschine Google oder die Wayback-Machine des gemeinnützigen, spendenfinanzierten Internet Archive. Diese Dienste sind nicht kontrollierbar, denn es gibt beliebig viele davon. Etwa Dokumentenserver, die PDFs, die sie im Internet finden, auf ihrer Seite anbieten. Niemand fragt da nach Urheberrecht.

Weil die Welt nicht vergisst, sollte man selber auch nicht vergessen. Wer im Internet publiziert, tut gut daran, seine Veröffentlichungen und Veränderungen penibel genau zu dokumentieren und zu archivieren. Auf diese Weise ist der Veröffentlichende nicht auf das Gutdünken von Spiegeln angewiesen und kann potentielle Modifikationen, Wahrheitsverdrehungen, Urheberrechtsverletzungen oder Verwendung von Material gegen Ihn entgegenwirken. In Zeiten von 1TB-Festplatten ist es töricht, Informationen wegzuschmeißen.

Inversion der Angst: Transparenz zuerst

Angst ist das leitende Motiv bei Geheimnissen. Geheimnisse führen zu einer Aura des Misstrauens und Flüsterns. Sie führen zu einer repressiven, verschlossenen Welt, dem Gegenteil einer Demokratie. Aus diesem Grund ist es wichtig, dass sich öffentliche Ämter zu Transparenz bekennen. Am Einfachsten ist Transparenz im Alltag umzusetzen, in dem man das Prinzip des Versteckens umkehrt. Dieses "Prinzip des Versteckens" funktioniert so: Der Standardmodus ist das Geheimhalten, nur besondere Informationen werden veröffentlicht. Das kann bei Institutionen durch eine Pressestelle passieren, oder es passiert durch eine sorgfältig redaktionell betreute Website. Die Verhältnisse sind wie beim Eisberg: 85% befinden sich unter Wasser, nur 15% sind öffentlich sichtbar. Dieses Prinzip hat viele Vorteile, etwa kann man auf diese 15% sehr sorgfältig Einfluss nehmen und auf diese Weise seine Öffentlichkeitswirkung moderieren.

Die Inversion des Prinzips bedeutet, den Eisberg auf den Kopf zu stellen. A priori passiert damit alles in der Öffentlichkeit und nur schützenswerte Informationen werden im Geheimen kommuniziert. Typische Organisationen, die diesem Modell folgen, sind Webcommunities, die in Wikis, Foren und Chaträumen entstehen die a priori jedem offen stehen. Sie verfügen aber dennoch über Rückzugsorte, wo sich Gruppierungen unter Ausschluss der Öffenltichkeit beraten können.

Im Informationszeitalter wird die Webcommunity zum Vorbild für die Demokratie. Der aufgeklärte Bürger adaptiert das Prinzip nach Kräften für jede seiner Tätigkeiten. Dazu bedarf es nur einem kurzen Innehalten und der kritischen Frage, ob die derzeitige Tätigkeit denn wirklich schützenswert ist. Schnell kommt man zur Erkenntnis, dass man durch das Teilen vielleicht keinen sofortigen Mehrwert für die Gemeinschaft sieht, sich aber nach langer Zeit ein großer Wissensberg aufbaut, in dem ein enormes Potential schlummert.

Der Mehrwert von Transparenz

Das öffentlich zugänglich gemachte Wissen von Versionsgeschichten, Quelltexten, usw. ermöglicht in erster Linie Nachahmern, zu Lernen ohne dabei nachfragen zu müssen. Es ist wie eine große Bücherei die offen steht und wo man den Arbeitenden zuschauen kann ohne sie von ihrer Arbeit abzulenken. Die Zeit ist dann sinnvoller investiert, wenn man sich zur Kommunikation gleich dem Inhaltlichen zuwenden kann, ohne vorher den administrativen Zugriff zu regeln. Dies ermöglicht ein kinderleichtes Cross-Referencing im Sinne von Deep-Links zu komplizierten Objekten, etwa einer in einem Versionsverwaltungsarchiv gespeicherten Veränderung oder einer Zeile im aktuellen Code eines Programms.

Die große Bibliothek kann auch als Referenz im Lebenslauf dienen. Sie ist undiskutabler Beweis von erbrachter Leistung, vor allem wenn sie authentisch eine lange Zeitlinie belegen kann (etwa durch kryptografisch signierte Commits in Git). Sie kann Garant von Qualität und Quantität sein. Diese Anwendung ist keinenfalls Zukunftsmusik sondern wird bereits heute bei vielen Informatikern verwendet, um ihre Open-Source-Aktivitäten zu dokumentieren.

Tatsächlich ist die Bibliothek ein ungeheurer Wissensberg, der erst nach Erschließung sucht. Er kann als Corpus für viele Arten von Forschung dienen, etwa zur Texttechnologie, sozialen Netzwerken, Machine Learning uvm.

Allen vorran ist der Wissensberg aber sichtbar, für Suchmaschinen und Menschen, die Antworten auf Probleme suchen. Ich habe bei anderen Projekten bereits viele Kontakte herstellen können alleine durch öffentlich geführte Diskussionen bei denen die ganze Welt "Read-Only"-Zugriff hatte.

Gefahren

Die Inversion der Angst bedeutet, dass man aufgeklärt mit den schützenswerten Informationen umgehen muss. Man entwickelt mit der Zeit ein gutes Gespür dafür, welche Informationen schützenswert sind und welche nicht. Dabei können durchaus Fehler passieren, Informationen werden vorschnell veröffentlicht die nicht für die Welt gedacht waren. Gute Repositories bieten Möglichkeiten, diese Fehler zu beheben, etwa im Sinne des nachträglichen Deklarierens als Geheim bzw. Löschens. Tatsächlich wird der Fehltritt lediglich kaschiert, da die Information ja bereits im Internet gelandet ist und potentiell gelesen werden konnte. Traditionelle Veröffentlichungskultur leidet allerdings ebenfalls unter diesem Problem. In beiden Fällen kann man die Gefahr durch eine zusätzliche Reviewebene eindämmen (z.B. Gerrit für Git).

Die überschaubare Zahl an Geheimnissen ist gleichzeitig Vorteil und Nachteil. Einerseits führen Sie, wenn nicht besonders versteckt, einen Angreifer schnell zu den wertvollen Informationen. Andererseits lassen sich die Schutzmechanismen gerade dank ihrerm geringen Umfang besonders härten.

© 2008 - 2013 technikum29 • Sven Köppel • Some rights reserved
Powered by Trac
Expect where otherwise noted, content on this site is licensed under a Creative Commons 3.0 License