Wikimedia Labs/Tool Labs/Roadmap de

= Zeitplan für die Entwicklung von Tool Labs und die Migration vom Toolserver (Entwurf) =

The English version is available here: Tool_Labs/Roadmap_en

Erwartungen an eine Infrastruktur für Softwareentwicklung durch Freiwillige
Der Toolserver ist eine Infrastruktur, die Software hostet, die Wikipedia und ihren Schwesterprojekten zugute kommt. Unsere Erwartungen an eine solche Infrastruktur sind folgende:
 * Jeder und jede Freiwillige kann einen Account beantragen, um Software zu entwickeln, die Wikimedia-Projekte unterstützt, verbessert oder analysiert.
 * Die Infrastruktur macht es so einfach wie möglich, Code und Wissen miteinander zu teilen.
 * Die Infrastruktur wird zuverlässig gewartet und ist verfügbar. Technische Ausfälle sollten die Ausnahme sein.
 * Die Software läuft dort in einer Umgebung, die dem Produktivbetrieb der Wikimedia-Projekte ähnlich ist. Die Daten aller Wikimedia-Projekte und des Projektes OpenStreetMap sind leicht abfragbar. Dies bezieht sich auf die Datenmenge, die für normale, unprivilegierte, registrierte Nutzerinnen und Nutzer sichtbar ist.
 * Die Infrastruktur bietet den Tool-Entwicklern eigene Datenbanken und gemeinsamen Speicherplatz für ihre Projekte an.
 * Die Community der Tool-Entwickler kann sich an der Definition benötigter Funktionalitäten und Software beteiligen.
 * Idealerweise bietet diese Infrastruktur einen Staging-Prozess an, um bestimmter Software den Übergang in den Produktivbetrieb zu erleichtern.
 * Mehrere Systemadministratoren oder -administratorinnen stehen zur Verfügung, optimalerweise in verschiedenen Zeitzonen, um zeitnah auf Anfragen zu reagieren. Sie sollten Tool-Entwicklern mit verschiedenen Wissensständen helfen können und Neulingen gegenüber aufgeschlossen sein.

Grundsätzliche Unterschiede zwischen dem Toolserver und Labs/Tool Labs

 * Das technische Konzept: Der Toolserver wird hauptsächlich von individuellen Entwicklern und Entwicklerinnen genutzt. “Multi-Maintainer-Projekte” existieren zwar, sie sind aber nicht der Standard. In Labs stehen dagegen Kooperation im Team, Teilen von Software und das Angebot eines Staging-Prozesses im Mittelpunkt des Konzepts.
 * Verantwortung: Der Toolserver wurde über viele Jahre von sehr wenigen Menschen gewartet, die nur teilweise dafür bezahlt wurden. Der größte Teil der Arbeit wurde ehrenamtlich geleistet. Für diese Personen war nicht nur die Arbeitslast sehr hoch, sondern dadurch ist auch Vieles nicht dokumentiert worden. Das erschwert es, neue Admins ins Team zu holen, um die Verantwortung wieder besser zu verteilen. Labs/Tool Labs wurde von Anfang an von bezahltem WMF-Personal konzipiert und aufgebaut. Freiwillige Admins sind willkommen, aber die Verantwortung für das Gesamtprojekt liegt bei einer Institution, in der das Wissen auf mehr Personen verteilt ist und Arbeitszeit für Dokumentation aufgewendet werden kann. Wenn eine Person sich entscheidet, das Projekt zu verlassen, ist das Projekt als Ganzes nicht gefährdet.
 * Labs hat sich dem Einsatz von freier Software (nach der Open-Source-Definition der Open Source Initiative) verpflichtet. Dies passt gut zur Idee der Wikimedia-Projekte, Wissen zu befreien. Der Toolserver hostet auch proprietäre Software, sowohl was Teile der Infrastruktur selbst angeht als auch die Tools der Community.

Allgemeine Klarstellungen von Wikimedia Deutschland
WMDE möchte vorab Folgendes klarstellen:
 * Der Toolserver ist ein Community-Projekt. WMDE ist in einer koordinierenden Rolle, um das Projekt zu unterstützen. Die Migration der Tools muss jedoch von der aktiven Community selbst durchgeführt werden.
 * Tool-Entwickler, die ihre Software umziehen möchten, sollen damit nicht allein gelassen werden. WMDE wird sie dabei so gut wie möglich unterstützen. Alle Tool-Entwickler/innen, die technische Unterstützung für den Umzug möchten, sind aufgerufen, uns bis Ende September 2013 mitzuteilen, was sie genau brauchen. (“Wir”, das sind in diesem Fall entweder die Ansprechpersonen für den Toolserver bei WMDE oder die WMF-Admins, die an Tool Labs arbeiten.) Nach Ablauf dieser Frist können wir keine Support-Anfragen mehr annehmen.
 * Die oben erwähnte Verpflichtung auf freie Software bedeutet, dass niemand Anspruch auf eine 1:1-Übernahme der eigenen Tools erheben kann. Möglicherweise werden einige Tools von den Entwicklern auf Open-Source-Alternativen portiert werden müssen. WMDE übernimmt keine Verantwortung für den Erhalt aller Tools. Der Verein kann sich nicht unmittelbar um den Erhalt der auf dem Toolserver existierenden proprietären Software kümmern. Die Rechtsabteilung der WMF hat signalisiert, dass es möglich ist, Ausnahmen zu diskutieren: Wenn besonders wichtige Tools unter diese Regel fallen, dann wird die WMF von Fall zu Fall entscheiden, ob sie Lizenzen für eine bestimmte Software kauft. Als diskutierbares Beispiel nennt die WMF Software, die einer Universität gehört, die bereit wäre, der WMF und ihren Freiwilligen (nicht aber einer Einzelperson) eine Lizenz zu geben, dann kann darüber gesprochen werden. Eine solche Lizenz müsste jedoch sehr breit sein und die WMF ist nicht gewillt, lange oder im Detail über sie zu verhandeln.
 * WMDE hat den Toolserver formal betrieben und koordiniert den Migrationsprozess. Der Verein ist für Tool Labs jedoch nicht verantwortlich - dies ist ein WMF-Projekt.

Migration vom Toolserver - was WMDE den Tool-Entwickler/innen anbietet

 * Technischen Support bei der Migration: Unser Softwareentwickler Johannes Kroll kann um Hilfe gebeten werden, wenn Tools angepasst werden müssen, um in Tool Labs zu laufen. Er nimmt bis zum 30.09.2013 entsprechende Anfragen entgegen und hilft dabei, den Programmieraufwand abzuschätzen. Wenn gewünscht, kann er beim Umprogrammieren helfen. Dafür steht ein Teil seiner Stelle von Oktober bis Dezember 2013 zur Verfügung, deshalb wird er eine Priorisierung vornehmen, wenn viele Supportanfragen kommen. (Der Support bei der Einrichtung von Accounts und der Orientierung in Tool Labs liegt bei der WMF.)
 * Dokumentation des Migrationsprozesses

Status von Tool Labs (Stand: 10.05.2013)
Tool Labs besteht aus zwei Projekten in den Wikimedia Labs: "Tools" und "Bots".

"Tools" ist eine stabile Produktivumgebung für Tools. Dieses Projekt wird von drei Administratoren mit root-Rechten aufgebaut und gewartet. Zwei davon arbeiten für die WMF, einer ist ehrenamtlich dabei. Freiwillige können root-Rechte bekommen, wenn sie eine Verschwiegenheitserklärung der WMF unterzeichnen (wie beim Toolserver). Admin-Zugang wird hier recht restriktiv gehandhabt, damit die Umgebung möglichst stabil bliebt.

"Bots" ist eine experimentellere Umgebung für Tools. Dieses Projekt wird von der Community gewartet und ist flexibler in seinem Aufbau, so dass Tool-Maintainer mit Veränderungen in ihrer Umgebung experimentieren können.

Zeitplan
Dieser Zeitplan klärt,
 * wann Tool Labs technisch soweit ist, dass es den Toolserver ersetzen kann,
 * welche Schritte im Rahmen einer Migration unternommen werden müssen.

Links

 * Überblick über die benötigten Features in Tool Labs (von der Community gesammelt): Wikimedia_Labs/Toolserver_features_needed_in_Tool_Labs
 * Liste der Tools (Silke Meyer und Community, unvollständig): Toolserver/List_of_Tools
 * Begonnene Dokumentation für die Migration von Tools/FAQ (Silke Meyer, Fortsetzung folgt): Wikimedia_Labs/Migration_Of_Toolserver_Tools
 * WMF Engineering goals: Wikimedia_Engineering/2012-13_Goals
 * Zeitplan der WMF für die Tool Labs Datenbank-Replikation: ToolLabsDatabasePlan
 * Liste der in Tool Labs gehosteten Tools: http://tools.wmflabs.org/