Etherpad
# Etherpad

Etherpad ist ein webbasierter Texteditor zur kollaborativen Bearbeitung von Texten (collaborative real-time editor). Mit Etherpad können mehrere Personen gleichzeitig ein Textdokument bearbeiten, wobei alle Änderungen sofort bei allen Teilnehmern sichtbar werden. Dabei können die Änderungen der verschiedenen Bearbeiter farblich unterschieden werden. Eine weitere komfortable Funktion ist die Möglichkeit, neben der Textbearbeitung im Bearbeitungsfenster zu chatten.

Die Software wurde 2008 veröffentlicht. Im Dezember 2009 wurde sie von Google Inc. gekauft und unter eine Open-Source-Lizenz gestellt. Zurzeit ist Etherpad auf einigen frei zugänglichen Servern im Netz installiert. Die Softwareentwicklung liegt bei der Etherpad Foundation.

Eine grundlegende Neuprogrammierung ist das schlankere und schnellere Etherpad Lite.

Analog zum Etherpad existiert auch ein EtherCalc als kollaborative Tabellenkalkulation.

## Funktionen und Implementierung

Auf einem Etherpadserver kann ohne irgendeine Zugangsbeschränkung von jedem ein neues Textdokument ('Pad') erstellt werden. Jedes Textdokument hat dabei eine feste URL, wobei standardmäßig zur Erstellung eines Pads ein Kryptolink vergeben wird, also eine URL, die eine längere zufällige Zeichenfolge enthält. Nur bei Kenntnis dieser URL kann man das Pad einsehen und editieren sowie über den assoziierten Chat kommunizieren. Die Mitarbeiter werden dabei im Chatfenster über frei gewählte Namen sowie im Textdokument über verschiedene Farben unterschieden. In der Ursprungsversion sind auch passwortgeschützte Pads möglich.

Der bearbeitete Text wird in kurzen Zeitabständen serverseitig abgespeichert, darüber hinaus kann jeder Autor jederzeit einen bestimmten Bearbeitungsstand nochmals explizit speichern. Über eine Zeitschiene kann fließend und meist bis auf den einzelnen Tastenanschlag jeder Bearbeitungsstand für jeden Zeitpunkt verzögerungsfrei angesehen werden.

Das Dokument kann jederzeit als einfacher Text, HTML, Word-Dokument (über AbiWord), PDF, OpenDocument sowie gegebenenfalls in weiteren Formaten exportiert und auf dem eigenen Rechner gespeichert werden. Copy & Paste ist ebenfalls jederzeit möglich.

Dabei sind die meisten öffentlichen Etherpad-Server so ausgerichtet, dass nichts gelöscht wird. Das heißt, alles was geschrieben wird, ist über die Versionsgeschichte (Zeitleiste) dauerhaft für jeden abrufbar, der die URL des betreffenden Pads kennt.

Etherpad Lite ist in JavaScript implementiert. Die Echtzeitfunktionalität wird über Comet, eine Ajax-Programmiertechnik, realisiert. Die Pro-Version ist in Java, JavaScript und Scala geschrieben.

Bei der Erstveröffentlichung war Etherpad die erste Webanwendung ihrer Art mit Echtzeit-Ausführung, was zuvor nur mit Desktop-Programmen wie Subethaedit (Mac), Gobby beziehungsweise MoonEdit (beide plattformunabhängig) erreicht wurde. Andere kollaborative Web-Editoren erreichten nur näherungsweise Echtzeitfähigkeit.

## Erstveröffentlichung

Etherpad wurde am 19. November 2008 von David Greenspan sowie den Google-Mitarbeitern Aaron Iba und J. D. Zamfirescu veröffentlicht. Später kamen der ehemalige Google-Mitarbeiter und Serienunternehmer Daniel Clemens sowie der Designer David Cole hinzu. Die ursprüngliche Website war etherpad.com. Slashdot berichtete über Etherpad im November 2008, wodurch sich der Slashdot-Effekt in Form von Server-Überlastung bemerkbar machte. Daraufhin änderten die Entwickler den Softwarestatus in Beta, wobei sie das Anlegen neuer Pads nicht mehr erlaubten, jedoch den uneingeschränkten Zugriff auf bereits existierende Dokumente. Anschließend wurde die Server-Infrastruktur aufgerüstet. Nachdem die Software neu geschrieben worden war, ging sie im Januar 2009 wieder in Betrieb und wurde im Februar wieder frei zugänglich.

## Übernahme durch Google

Als Google Wave angekündigt wurde, schrieb das Etherpad-Team darüber in seinem Blog und zog Vergleiche der beiden Plattformen, wobei festgestellt wurde, dass die minimalistische und zielgerichtete Etherpad-Benutzerschnittstelle in manchen Fällen im Vorteil sein könnte. Noch im Dezember 2009 wurde im Etherpad-Blog die Übernahme durch Google zwecks Integration in Google Wave verkündet. Bisherige Etherpadnutzer würden Einladungen für Google Wave erhalten. Im März kündigte Etherpad an, das Anlegen neuer Pads bis April zu erlauben, existierende Pads konnten bis Mai benutzt werden. Optionen für den Export und das Herunterladen waren verfügbar. Der Dienst von Google wurde noch im Mai eingestellt.

## Open Source

Nachdem etliche Benutzer ihre Unzufriedenheit mit der Art und Weise der Übernahme sowie der Inkompatibilität zwischen Google Wave und den Grundprinzipien und Merkmalen von Etherpad ausgedrückt hatten, widerriefen die Teams der beiden Projekte ihre Entscheidung, das Erzeugen neuer Pads zu unterbinden, versprachen den Etherpad-Code in Open Source zu überführen und versicherten, den Dienst ohne Einschränkungen aufrechtzuerhalten, bis die Überführung abgeschlossen sei. Google veröffentlichte den Quellcode im Dezember 2009 unter der Apache-Lizenz. Anschließend fragte Google bei den Code-Maintainern von Etherpad um das Entfernen von JSMin aus dem Code nach. Grund war die Lizenzklausel „The Software shall be used for Good, not Evil“; dies ist nicht vereinbar mit Googles Lizenzanforderungen an Open Source. Nach der Freigabe als Open Source wurden von etlichen Leuten Etherpad-Server als Klone der Original-Website aufgesetzt. Bald darauf riefen Benutzer und Programmierer nach einem Gründungstreffen im IRC-Kanal #etherpad auf Freenode die Etherpad Foundation zur weiteren Koordination der Entwicklung ins Leben.

Die Webseite der Etherpad Foundation führt eine Liste mit einer wachsenden Zahl an Websites, die mit Etherpad-Software betrieben werden.

## Etherpad Lite

Etherpad Lite ist eine grundlegend neue Variante von Etherpad. Die Lite-Version basiert auf Node.js, bot ursprünglich weniger Funktionen, verbraucht aber auch deutlich weniger Speicher und ist einfacher aufzusetzen. Das herkömmliche Etherpad bietet z. B. Passwörter, Programmierschnittstellen und zusätzliche Plugins an und ist eher für größere Installationen gedacht, wobei die Lite-Version an Funktionalität mittlerweile aufgeholt hat.

