SIMILE Timeline: Visualisierung von Geschichte auf der Zeitachse

image

Als Historiker habe ich mich seit jeher dafür interessiert, wie man eine Abfolge von Ereignissen und Perioden visuell darstellen kann. Und als Informatiker habe ich stets nach Desktop- und Web-Applikationen gesucht, welche diese Ideen auch umsetzen können – bisher mit mässigem Erfolg: WikiTimeLine beispielsweise ist zwar ein interessanter Ansatz, kann aber weder visuell noch in der Bedienung wirklich überzeugen. Und Web-2.0-Produkte wie z.B. CircaVie oder Timeline kommen zwar optisch attraktiv daher, konzentrieren sich aber mehr auf Community-Funktionalität und Gimmicks als auf eine wirklich übersichtliche und interaktive Visualisierung.

SIMILE Timeline dagegen kommt meiner Vorstellung von einer perfekten Lösung schon sehr nahe. Zunächst ist die doppelte Zeitachse mit den unterschiedlichen Zoom-Stufen eine wirklich schöne Idee. Leider nicht selbstverständlich ist auch die Möglichkeit, sowohl punktuelle Ereignisse als auch Perioden zu visualisieren. Sehr hilfreich ist ferner die Möglichkeit (auf obigem Screenshot nicht sichtbar), die Einträge auf der Zeitachse per Volltextsuche zu filtern oder farbig zu markieren. Ein empfehlenswerter Showcase ist die Religion Timeline über jüdische und christliche Geschichte.

Das schönste aber ist: SIMILE ist nicht nur Open Source (BSD-Lizenz), sondern kann auch sehr einfach in die eigene Website eingebunden werden: Alles was es braucht, ist HTML, JavaScript sowie eine XML-Datei mit den darzustellenden Ereignissen bzw. Perioden. Wer schon einmal ein Google Maps Mashup erstellt hat, wird das Konzept von Timeline rasch begreifen.

SIMILE steht übrigens für Semantic Interoperability of Metadata and Information in unLike Environments und ist ein Projekt der University of California in Berkeley.

P.S. Es gibt auch ein SIMILE Timeline Plug-In für WordPress, das es erlaubt, Blog-Artikel anhand ihres Publikationsdatums auf einer Zeitachse zu platzieren. Aus meiner Sicht ist das nicht unbedingt die sinnvollste Anwendung für Timeline – aber eine hübsche Alternative für ein chronologisch sortiertes Blog-Archiv ist es allemal, wie dieses Beispiel zeigt.

DokuWiki: PHP-Wiki ohne Datenbank

image

Nebst dem bei der Wikipedia eingesetzten MediaWiki gibt es noch diverse andere Wiki-Lösungen – gegen 100 Namen listet die Website WikiMatrix auf, wo man alle Produkte über Dutzende von Kriterien miteinander vergleichen kann.

Eines der zentralen Unterscheidungskriterien betrifft die Frage, ob ein Wiki seine Daten in einer Datenbank oder in Dateien ablegt. Für grosse Wikis mit vielen Besuchern ist eine Datenbank sicher die richtige Lösung. Kleinere Wikis mit einem beschränkten Benutzerkreis kommen dagegen gut mit einer datei-basierten Datenspeicherung aus und lassen sich dadurch wesentlich einfacher auf einem Webserver installieren.

Ein populärer Vertreter der zweiten Gattung ist DokuWiki: Es bietet eine gute Grundausstattung und ist zudem über eine Plug-In-Architektur einfach erweiterbar (vgl. WikiMatrix Feature List). Hervorzuheben wären folgende Features:

  • History aller Änderungen mit Vergleichsmöglichkeit früherer Versionen
  • Einbindung von Bildern und anderen Media-Elementen
  • Namespace-Konzept
  • automatisch generiertes Seiteninhaltsverzeichnis
  • Benutzerverwaltung und Rechtemanagement
  • index-basierte Volltextsuche
  • Template-Konzept ermöglicht eine individuelle Optik
  • über 100 Plug-Ins verfügbar (beispielsweise für Musiknoten, chemische Formeln, Google Maps, Umfragen und Charts)

image

Das einzige, was ich spontan vermisse, ist ein echter WYSIWYG-Editor. Zwar gibt es oberhalb des Eingabefelds Buttons für die wichtigsten Formatierungsoptionen, aber diese erzeugen nur Plaintext mit der klassischen Wiki-Syntax. Was für Wiki-Puristen genau das Richtige ist, könnte eine unnötige Hemmschwelle für weniger technisch orientiert Anwender sein. Ansonsten ist DokuWiki aber ein fast ideales System, um im Team online Dokumentationen aller Art zu erstellen.

DokuWiki ist in PHP entwicklet und unterliegt der GNU General Public Licence v2.

Grundausstattung: Plug-ins für WordPress

image

  • SlimStat (vgl. Bild) – Sehr übersichtliche und trotzdem detaillierte Zugriffsstatistik im Backend. Plug and Play. Unverzichtbar. Alternativen: WordPress.com Stats.
  • Spam Karma – Spammer gehören zu den ersten und regelmässigsten Besuchern eines Blogs. Ein Schutzmechanismus gegen Kommentar-Spam ist deshalb zwingend. Spam Karma hat sich bei mir seit Jahren bewährt, so dass ich Akismet (Plug-in im Lieferumfang von WordPress) nie genutzt habe.
  • Google Sitemap Generator – Erzeugt eine XML Sitemap („Google Sitemap“) und unterstützt dadurch die Indexierung des Blogs durch die Suchmaschinen von Google, Yahoo und Microsoft.
  • Subscribe to Comments – Bietet Kommentatoren die Möglichkeit, sich bei weiteren Kommentaren auf denselben Artikel per E-Mail benachrichtigen zu lassen. Zwingend, wenn man ein Blog als Diskussionsplattform versteht.
  • Snap Shots Plug-in – Bindet grafische Previews für alle Links auf Basis des Dienstes von snap.com ein. Optisch sehr attraktiv und zugleich sehr nützlich, da es manchen überflüssigen Klick erspart.
  • cforms – Leistungsfähiger Formulargenerator, mit dem man weit mehr als nur ein Kontaktformular bereitstellen kann (vgl. cforms: Formulargenerator für WordPress).
  • WordPress Mobile Edition – Macht ein Blog auch für Mobile Devices (Handy, SmartPhone, PDA) verfügbar, indem es die Seiten in einem geeigneten Format rendert.
  • Random File – Erlaubt es, eine zufällig ausgewählte Datei aus einem vorgegebenen Verzeichnis einzubinden. Ideal, um wechselnde Bilder oder Texte anzuzeigen.
  • Maintenance Mode – Wenn Wartungsarbeiten anstehen, kann man dank diesem Plug-in den geordneten Rückzug antreten: Auf Kopfdruck sehen nur noch eingeloggte Administratoren das Frontend, während normale Besucher eine Meldung erhalten, dass Wartungarbeiten im Gange sind.
  • WPvideo – Vereinfacht das Einbinden von YouTube-Videos in einen Blog-Artikel.
  • Event Calendar – Ermöglicht es, Blog-Artikel als Events zu kennzeichnen, mit Datum und Zeit zu versehen und dann in einem Kalender auflisten zu lassen. Wird auch für den Event-Kalender auf Open Mind eingsetzt.
  • O42 Clean Umlauts – Plug-in, das den unsauberen Umgang von WordPress mit Sonderzeichen wie z.B. deutschen Umlauten in Perma-Links kompensiert. Scheint allerdings mit WordPress 2.2. nicht mehr zu funktionieren.

TYPO3 Tuning: Google Maps einbinden

Für die Landkarten und Satellitenfotos von Google Maps gibt es eine Programmierschnittstelle (API), welche es erlaubt, solche Maps in die eigenen Website einzubinden. Sofern diese Website auf TYPO3 basiert, bietet die Extension rggooglemap von Georg Ringer einen sehr eleganten Weg, dies zu tun. rggooglemap speichert die Placemarks (oder Points of Interest POI, wie sie hier heissen) als geocodierte Adressen in der Tabelle tt_address und benötigt als Voraussetzung nur noch die Extension xajax.

Um im Frontend eine Karte und eine klickbare Liste mit den POI auszugeben, braucht man lediglich das Plug-in zweimal in eine Seite einzubauen, einmal mit dem Anzeige-Modus „Map“ und einmal mit dem Anzeige-Modus „POIs“. Und für die Erfassung der POIs im Backend steht im Modul „Google-Map“ eine Karte zur Verfügung, über die man die Koordinationen eines POI sehr schön auslesen und direkt in die Datenbank schreiben kann. Dabei kann man auch bestehende Adress-Datensätze nachträglich mit Geo-Koordinatioonen ergänzen und diese kategorisieren (wobei leider pro POI nur eine einzige Kategorie vergeben werden kann).

Aufgrund meines eigenen Demo-Projekts www.selberpfluecken.ch noch folgende Praxistipps: Benutzen Sie die Version 2.1.3 von rggooglemap, da andere Versionen unter Umständen keine POIs auf der Karte anzeigen. (Diese Version gibt es derzeit nur im TYPO3-Repository, nicht auf der offiziellen Website des Plug-ins.) Legen Sie ausserdem zuerst einige Kategorien (Datensätze vom „POI Category“) an, damit alle erzeugten POIs auch einer Kategorie zugewiesen sind.

rggooglemap wird weiterentwicklet, und eine Demo der neusten Beta-Version zeigt einige interessante neue Features. Diese Extension muss man sicher im Auge behalten. Wer trotzdem eine Alternative sucht, sollte sich lumogooglemaps anschauen (die ich allerdings nicht selbst getestet habe). Eine dritte Extension zur Einbindung von Google Maps ist wec_map, deren Einsatz hier im Detail beschrieben wird.