# TWiki

TWiki ist eine zu großen Teilen in Perl entwickelte freie (unter der GPL lizenzierte) Wiki-Software. Als mehr technisch orientierte Anwendung kommt TWiki bisher vor allem in Intranets mittlerer und großer Unternehmen als Wissens- und Dokumentenmanagement-System zum Einsatz.

## Geschichte

Am 23. Juli 1998 wurde die erste Version des TWiki auf der Basis von „JOS Wiki“ installiert. Weitere Releases folgen am 1. Juli 1999, am 1. September 1999, am 1. Mai 2000, am 1. Dezember 2000, am 1. September 2001, am 1. Dezember 2001, am 1. Februar 2003 und am 1. September 2004. Diese Releases tragen keine codierte Versionsnummer, sondern sind ausschließlich mit ihrem Release-Datum gekennzeichnet. Darüber hinaus tragen die letzten drei dieser Releases noch Codenamen nationaler Hauptstädte: „Athens“ (1. Dezember 2001), „Beijing“ (1. Februar 2003) und „Cairo“ (1. September 2004).
Mit dem Release vom 1. Februar 2006 tragen diese explizite Versionsnummern, beginnend mit „4.0“. Die Städtenamen bleiben, jedoch nicht mehr unbedingt mit nationalen Hauptstädten (beispielsweise „Edinburgh“ für den Release 4.1 am 16. Januar 2007).
Am 27. Oktober 2008 spaltete sich ein Großteil der TWiki-Community inklusive des Kernentwickler-Teams vom TWiki-Projekt ab. Hintergrund des Forks waren Spannungen zwischen der Gemeinschaft und dem TWiki-Gründer Peter Thoeny bzw. seinem Unternehmen twiki.net. Als Hauptstreitpunkt gilt die zunehmend kommerziell ausgerichtete Unternehmenspolitik von twiki.net, mit der sich die Community nicht identifizierte. Der Zwist eskalierte, als Thoeny eine neue Geschäftsordnung durchsetzen wollte, indem er Entwickler-Accounts sperren ließ, bis diese Entwickler der neuen Geschäftsordnung zustimmten. Die Community wertete dieses Vorgehen als feindliche Übernahme des Projekts.
Der Fork startete zunächst unter dem Arbeitstitel NextWiki, wurde jedoch im November 2008 in Foswiki (Free and Open Source Wiki) umbenannt.

## Eigenschaften

Folgende Funktionalität ist in dieser Kombination charakteristisch für TWiki:
* kein zusätzliches Datenbanksystem – alle Inhalte werden direkt in Dateien gespeichert
* Versionsverwaltung – jede Änderung an den Inhalten wird mittels RCS festgehalten und ist zurückverfolgbar
* Zugangskontrolle – fein abstimmbare Lese- und Schreibrechte für Benutzer und Gruppen
* dynamische Inhalte mittels TWiki-Variablen
* große Zahl von Plug-ins für zusätzliche Funktionalität
* Web-Anwendungen mit Formularen
* WYSIWYG-Editor auf der Basis von TinyMCE
* Skin-fähige Benutzeroberfläche
* Web-Feeds und E-Mail-Benachrichtigungen

### Architektur

TWiki ist ein strukturiertes Wiki und erlaubt (ähnlich wie bei einer Datenbank-Applikation) die Modifikation von Daten über Eingabefelder, die auf den einzelnen Seiten abgelegt sind. Für die Speicherung der Inhalte benutzt TWiki jedoch keine externe Datenbank, sondern nur Textdateien, und protokolliert die Änderungen mit der Versionskontrollsoftware RCS. Über diese SQL-ähnliche Datenbankabfragesprache werden die Revisionsdaten und andere Metainformationen in die Wiki-Seiten eingebettet.

### Benutzeroberfläche

TWiki ist komplett Skin-fähig, die Oberfläche wird über Templates und CSS abgebildet. TWiki unterstützt die Internationalisierung, multiple Zeichensätze sowie die Kodierung in UTF-8-URLs. Die Oberfläche wurde in die Sprachen Bulgarisch, Chinesisch, Tschechisch, Dänisch, Deutsch, Französisch, Italienisch, Japanisch, Niederländisch, Polnisch, Portugiesisch, Russisch, Schwedisch und Spanisch übersetzt.

### Inhaltsstruktur

In TWiki sind Daten in Webs, Topics und Anhängen organisiert:
* Topic ist die Grundeinheit, etwa ein Abschnitt oder Dokument, aber nicht zwangsläufig eine (Web-)Seite. Topics können einander hierarchisch über- und untergeordnet werden.
* Web ist eine übergeordnete Aufgabengruppe für beliebig viele Topics.

### Erweiterungen

Für TWiki existieren mehr als 200 Erweiterungen und Plug-ins, um das System zum Beispiel mit Datenbanken zu verbinden, Charts, Tags, Tabellen, Bilder-Galerien, Nutzungsstatistiken usw. zu erstellen und TWiki funktional auszubauen. Die Plug-in-API des Systems und die TWiki Markup Language erlauben es Entwicklern, zusätzliche Module zu schreiben und so die Funktionen zu erweitern.

## Anwendungsgebiete

TWiki kommt vor allem in Unternehmens-Intranets als Corporate Wiki zum Einsatz. Mit der Software werden insbesondere Aktivitäten von Arbeitsgruppen koordiniert sowie Projektstände, interne Abläufe und andere Informationen von relativ dauerhafter Relevanz abgebildet, dokumentiert und weiterentwickelt.

### Verbreitung

Der TWiki-Community zufolge (Stand: September 2011) wird TWiki in 50.000 Unternehmen eingesetzt. Darüber hinaus sollen 20.000 öffentliche Websites auf TWiki basieren. Die TWiki-Community beziffert die Gesamtzahl der Nutzer auf mehr als zwei Millionen Personen. Zu den bekanntesten Unternehmen, die TWiki im eigenen Intranet einsetzen, gehören Nokia, Motorola, Yahoo!, DHL, SAP, United Internet, Disney und andere mehr.

### Besonderheiten

Der wichtigste Unterschied zu anderen Wiki-Systemen, darunter auch zu dem bei Wikipedia eingesetzten Mediawiki, ist die einfache Programmierung von Anwendungen: TWiki-Seiten können aus dem Quelltext der Seiten heraus Variablen und Formulare erzeugen und verarbeiten. Damit können Wiki-Nutzer formularbasierte Anwendungen erstellen, ohne tiefergehende Programmierkenntnisse zu besitzen. Zudem verfügt das System über eine fein einstellbare Zugangskontrolle.