Picok: Die Open-Source-Alternative zu iGoogle & Co.

image

Wer iGoogle, Pakeflakes oder Netvibes kennt kann sich leicht vorstellen, was Picok ist: Eine persönliche Portalseite (manche sagen dazu auch Webtop oder Webcockpit), auf welcher der Benutzer nach Gutdünken vorgefertigte funktionale Module (sog. Portlets, Gadgets oder Widgets) positionieren kann. Diese Module reichen von einfachen RSS Feed Readern über Formulare für Suchmaschinen und Fahrpläne bis hin zu Anbindungen an E-Mail-Konten und Agenden.

Picock («Personal Information Cockpit») wurde von der Schweizer Webagentur Liip entwickelt, ursprünglich im Rahmen eines Intranet-Projekts für die Raiffeisen-Bank. Anfangs Juni wurde die Software unter der GPL 3 freigegeben. Voraussetzung ist ein Apache-Webserver unter Linux oder Mac OS, PHP 5.1.6 sowie MySQL 5. Hervorzuheben ist die Anbindung an Lotus Notes, welche den Zugriff auf Mail-Konten und Kalender erlaubt.

WordPress-Blogs auf dem iPhone

Die eigentliche Bedeutung von Apples iPhone liegt meiner Meinung nach darin, dass es den mobilen Zugang zum Internet massentauglich gemacht hat. Fast ein Jahrzehnt lang haben Marktforscher den bevorstehenden Durchbruch des Mobile Web beschworen, aber erst mit dem iPhone und seinem Safari-Browser ist dies Realität geworden.

Höchste Zeit also sich zu fragen, wie man ein WordPress-Blog für dieses Gerät optimieren kann. Wobei: Muss man dies überhaupt, wo doch der Vorteil des iPhones genau darin liegt, dass es eben auch normale Websites problemlos darstellen kann? Die Antwort ist einfach: Man muss nicht, aber es hat ganz klare Vorteile, wenn man für iPhone-Benutzer eine speziell formatierte Version seines Blogs ausliefert. Und wie dieser Artikel zeigen soll braucht es dazu weder viel Aufwand noch spezielle Kenntnisse.

iWPhone Screenshot

iWPhone ist ein WordPress-Plugin, welches ein für das iPhone optimiertes Frontend Theme enthält. Dieses Theme wird immer dann benutzt, wenn das Blog von einem iPhone aufgerufen wird – ansonsten kommt weiterhin das Standard-Theme zur Anwendung. Das iWPhone-Theme zeigt auf der Frontseite nur einen Textanriss ohne Bilder, was Zeit und Datenvolumen spart – erst wenn man die Detailansicht aufruft, bekommt man den Volltext inklusive Bilder, wobei letztere automatisch auf Bildschirmbreite skaliert werden. Auch Kommentare werden unterstützt. Leider ist iWPhone nicht lokalisiert, man muss also das Template selbst ins Deutsche übersetzen – das gilt allerdings für alle hier vorgestellten Lösungen. Ausserdem wirkt iWPhone wirklich nur auf das Frontend – wenn man sich vom iPhone aus im Admin-Interface des WordPress-Blogs einloggt, dann sieht es aus wie immer.

WordPress Mobile Edition Screenshot

Das oben beschriebene Prinzip gilt auch für WordPress Mobile Edition. Die Frontseite des mitgelieferten Templates “Carrington Mobile” ist nochmals reduzierter, aber visuell attraktiv und ziemlich iPhone-like. Als einzigen wesentlichen Nachteil empfinde ich es, dass die Bilder nicht skaliert werden, zumal man sie auch nicht scrollen oder zoomen kann – ist das Bild breiter als der Bildschirm, wird es schlicht abgeschnitten. Dafür unterstützt dieses Plugin nicht nur das iPhone, sondern jedes beliebige Handy: Im Backend kann man die User Agents definieren, für welche das Spezialtemplate zur Anwendung kommen soll.

WordPress Mobile Pack Screenshot

Das WordPress Mobile Pack bringt ein ziemlich schmuckloses Template mit (dafür in 4 Farbvarianten). Die Stärke dieses Plugins liegt darin, dass man im WordPress-Backend sehr viele Einstellmöglichkeiten vorfindet – für meinen Geschmack allerdings fast etwas zu viel. Hervorzuheben ist die Möglichkeit, dass der Besucher selbst entscheiden kann, ob er statt des iPhone-optimierten Templates das Standard-Template sehen möchte (und umgekehrt). Als einziges der hier vorgestellten Plugins bietet es zudem auch einen für das iPhone optimierten Admin-Zugang. Wer also sein Blog von unterwegs bewirtschaften möchte sollte diese Lösung in die engere Wahl miteinbeziehen.

WPtouch Screenshot

Visuell sehr schön an die iPhone-Ästhetik angepasst ist das WPtouch iPhone Theme. Im Admin-Backend finden sich zudem diverse Optionen, um das Frontend funktional und visuell dem eigenen Geschmack anzupassen. Wer in der Apple-Welt zuhause ist, wird an diesem Plugin wahrscheinlich am meisten Freude haben. Allerdings unterstützt es nicht nur das iPhone, sondern auch Handies, die auf Googles Android-Betriebssystem basieren.

WordPress App Screenshot

Wie gesagt enthält nur das WordPress Mobile Pack auch ein optimiertes Backend-Theme. Wer regelmässig von unterwegs auf das Backend zugreifen möchte, sollte deshalb die WordPress App in Betracht ziehen. Diese ist zwar ausgesprochen nüchtern gestaltet, hinsichtlich der Usability aber die beste Lösung für einen engagierten Moblogger. Allerdings muss man sich bewusst sein, dass man nicht den Komfort des Standard-Backends erwarten darf – HTML-Kenntnisse sind also unter Umständen durchaus noch gefragt.

OpenAlchemist: Schönes Strategiespiel aus der Tetris-Familie

OpenAlchemist Screenshot

Wenn man nur sehr flüchtig hinschaut könnte man OpenAlchemist mit dem Spieleklassiker Tetris verwechseln: Auch hier lässt man farbige Steine nach unten fallen mit dem Ziel, durch geschickte Positionierung den Stapel möglichst niedrig zu halten. Im Detail gibt es allerdings zahlreiche Unterschiede, wobei für mich der wichtigste Unterschied darin besteht, dass man nicht unter Zeitdruck steht. Man kann also die mehrfarbigen Doppelsteine auch erst nach reiflicher Überlegung versenken, was insofern wichtig ist, als es mehr braucht als nur Reihen aufzufüllen.

Ein schönes Spiel, das man rasch versteht und trotzdem lange spielen kann. Der Name mag etwas seltsam anmuten, er kommt aber von einem anderen Spiel, das hier Pate gestanden hat: Naturalchimie.

OpenAlchemist ist für Windows und Linux verfügbar. Der Code unterliegt der GPL, die Grafik einer Creative-Commons-Lizenz.

(via DimidoBlog)

ke_stats 0.2.0: Statistik-Extension jetzt mit Charts, CSV-Export und IP-Filter

image

Vor gut eineinhalb Jahren ist mir die TYPO3-Statistik-Extension ke_stats erstmals aufgefallen, und sie hat sich seither langsam aber stetig weiterentwickelt. Mit der jüngsten Version 0.2.0 werden die Pageviews und Visits nun auch als Chart dargestellt, wobei dies nur für die Übersichtsdarstellung der letzten 12 Monate gilt. Hervorzuheben ist auch die Exportfunktion für Statistikdaten im CSV-Format sowie das IP-Filter (dank dem man beispielsweise alle Zugriffe aus dem eigenen Unternehmen effizient ausfiltern kann, welche die Statistik verfälschen). Ansonsten ist ke_stats weiterhin ein praxisorientiertes Statistik-Tool, das Echtzeitauswertungen erlaubt und sich auf die wesentlichen Daten konzentriert.

TYPO3 Tuning: Kontaktdaten als vCards anbieten

image

Die Idee ist bestechend: Wo immer man auf seiner Website Kontaktinformationen anzeigt, bietet man diese auch zum Download im vCard-Format an. So muss ein Website-Besucher die Daten nicht manuell in seinem Adressbuch erfassen, sondern kann sie per Mausklick importieren. vCard ist standardisiert und wird von den wichtigsten E-Mail-Programmen (darunter Microsoft Outlook, Apple Mail, Google Gmail, Mozilla Thunderbird und Lotus Notes) unterstützt.

In der Praxis ist dies leider nicht ganz so einfach wie es klingt – zumindest wenn man TYPO3 nutzt und eine geeignete Extension sucht. Dabei sind es zwei sehr verschiedene Probleme, denen man immer wieder begegnet:

  1. Kontaktdaten gibt es in TYPO3 an mehreren Orten. In der Regel setzt man dafür die Extension tt_address ein, welche ihre Daten in der gleichnamigen Tabelle speichert. Aber auch die Profile der Frontend Users sind letztlich Kontaktdaten, und diese finden sich in der Tabelle fe_users. Einzelne Extensions nutzen weder die eine noch die andere Tabelle und speichern Kontaktdaten individuell.
  2. Sonderzeichen erscheinen in der vCard-Datei nicht automatisch so, wie man sie auf der Website sieht. Probleme mit Umlauten und anderen Sonderzeichen scheinen eher die Regel als die Ausnahme zu sein, besonders wenn man sein System mit UTF-8 aufgesetzt hat. Aus “Zürich” wird da rasch einmal “Zürich”, und somit sind die vCards natürlich nicht wirklich brauchbar. Bei meinen Tests war ich fast durchgängig mit diesem Problem konfrontiert, und ich fürchte, dass man zu dessen Lösung die Extensions anpassen müsste.
    UPDATE: Zumindest bei der Extension simplevcard sollte dieses Problem nun behoben sein: Mit der Version 0.3.1 wurde die Codierung von UTF-8 auf ISO-8859-1 geändert – gemäss dem Entwickler Andrew Plank ist Microsoft Outlook nicht in der Lage, UTF-8-vCards korrekt zu verarbeiten.

vcard

image Diejenige Extension, welche aufgrund ihres Namens eigentlich die Standlösung für diesen Zweck sein sollte, macht etwas ganz anderes, als man denkt: vcard erzeugt keine vCards im Frontend der Website, sondern im Backend. Dabei wird dem Kontextmenü im Seitenbaum ein neuer Eintrag «vCard Export» hinzugefügt, welcher bei allen Seiten erscheint, die Adressdatensätze von tt_address oder fe_ussers enthalten. Der Export umfasst immer sämtliche Datensätze und erfolgt in Form eines ZIP-Archivs, das die einzelnen vCards enthält.

simplevcard

Auch bei simplevcard täuscht der Name: So einfach ist der Einsatz dieser Extension nämlich nicht. Im Prinzip ermöglicht es simplecard, bei Adresslisten, die auf tt_address basieren, durch den Marker ###VCF_LINK### im Template einen vCard-Download zu integrieren. Die Schwierigkeit liegt nicht direkt in diesem Konzept, sondern darin, dass simplevcard die Installation von realurl voraussetzt (warum auch immer), und jene ist nicht ganz trivial. Für mich war es jedenfalls Grund genug, diesen Ansatz nicht weiterzuverfolgen.

image

neeg_vcard

Sehr einfach in der Handhabung ist dafür bei neeg_vcard (vgl. Screenshot oben). Diese Extension stellt ein Plugin bereit, über das jeweils eine einzelne Adresse als vCard publiziert werden kann. Die Adressdaten werden dabei im Flexform des Plugins gepflegt. Als Nachteil ist zu nennen, dass diese Daten weder in tt_address noch in fe_users gespeichert werden, sondern in tt_content. Es handelt sich also um eine Insellösung, die sich nur für eine kleine Menge von Kontaktdaten eignet.

wt_directory

wt_directory ist eine mächtige und flexible Lösung, um Kontaktdaten aus tt_address im Frontend auszugeben. Während der Gesamteindruck sehr positiv ist, funktionierte bei mir ausgerechnet der vCard-Export nicht korrekt: Zwar wird eine VCF-Datei erzeugt, diese enthält allerdings nicht nur die vCard, sondern den gesamten HTML-Code der betreffenden Webpage – für E-Mail-Programme ist dies schlicht ein ungültiges Dateiformat. Ob dies nun an wt_directory liegt oder an einer anderen Extension in meiner TYPO3-Installation vermag ich nicht zu sagen – wie eine kurze Recherche zeigt haben allerdings auch andere Anwender von ähnlichen Problemen berichtet.

Silex: Flash CMS mit Open-Source-Lizenz

Silex Flash CMS im Edit Mode

Der Begriff “Flash CMS” gehörte bis vor kurzem nicht zu meinem Aktivwortschatz. Allerdings zeichnete sich in meiner täglichen Arbeit schon länger ab, dass viele Kunden nicht zwischen einem CMS und einer Flash Website wählen wollen, sondern eine Flash Website mit CMS wünschen. Und hier haben viele etablierte CMS leider nicht viel zu bieten.

Ein Flash CMS ist nichts anderes als ein Tool, um eine Flash Website direkt auf dem Server (und ohne Adobes Flash-Software) zu bewirtschaften. Das Tool selbst ist in der Regel ebenfalls in Flash programmiert, somit ist der Begriff “Flash CMS” im doppelten Sinn richtig.

Silex ist genau ein solches Flash CMS. Es besteht aus einem Backend – dem Manager – und einem WYSIWYG-Editor im Frontend. Im Manager legt man neue Sites an und definiert die grundlegenden Einstellungen. Das eigentliche Content Management erledigt man jedoch im Frontend, und somit ist das Backend weit weniger wichtig als bei einem konventionellen CMS.

image

Den Editor im Frontend erreicht man per Rechtsklick auf die Flash Website. Nach dem Login wird am oberen Fensterrand ein Toolbar eingeblendet, der Zugriff auf verschiedene Paletten bietet. Mit diesen Paletten wählt man Ebenen, die darin enthaltenen Objekte und schliesslich deren Parameter aus. Für die eigentlichen Eingaben wird dann am unteren Fensterrand ein Panel eingeblendet, um Texte zu editieren, Pfade auf Multimedia-Objekte (Video, Audio, Flash, PDF) zu setzen oder Parameterwerte zu bearbeiten.

Die Installation von Silex ist denkbar einfach und nicht anders als bei vielen anderen PHP-Applikationen: Man spielt die Files per FTP auf den Server, ruft den Installer auf, der ein Admin-Account anlegt und das URL Rewriting installiert. Nach drei Klicks ist man bereits soweit, dass man sich in das Backend einloggen kann. Auf dem Server muss PHP 5 installiert sein, eine Datenbank wird dagegen nicht benötigt.

Silex war im Juni 2009 das Projekt des Monats bei SourceForge. Die hohen Erwartungen, welche diese Auszeichnung bei mir geweckt hat, konnte Silex leider nicht ganz erfüllen: Nicht alles funktioniert so intuitiv, wie man es sich wünschen würde, und manchmal fühlt sich das Interface etwas hakelig an. Besonders störend empfand ich, dass der Texteditor bei höheren Tippfrequenzen nicht mithalten kann und Buchstaben verschluckt bzw. vertauscht. Insofern ist Silex ein spannender Ansatz, der in der Umsetzung aber noch Verbesserungspotential hat.

Glow: JavaScript-Library der BBC wird Open Source

image

Die BBC hat ihre – bisher nur für eigene Zwecke genutzte – JavaScript-Library Glow als Open Source Software freigegeben und unter die Apache-Lizenz 2.0 gestellt. Als wichtiger Vorteil dieser Library wird die Unterstützung älterer Browser (namentlich Safari 1.3) genannt.

Persönlich hat mich vor allem das obige Beispiel einer grafischen Zeitleiste angesprochen, welche mit Glow erstellt wurde: Die Royal Timeline zeigt die Regentschaft der britischen Monarchen und bietet eine variable Vergrösserung sowie schnelles Anspringen von bestimmten Punkten auf der Zeitachse.

Discussion: Kommentar-Plugin für DokuWiki

 image

Erstmals aufgefallen ist mir das Konzept vor Jahren in der offiziellen PHP-Dokumentation: Unten an der Seite können alle Besucher Anmerkungen anfügen, auch wenn sie für den normalen Seiteninhalt keine Schreibberechtigung haben. Oft findet man dort wertvolle Ergänzungen und Beispiele, an welche die Autoren der Dokumentation nicht gedacht haben.

Discussion ist ein Plug-in für DokuWiki, welches eine vergleichbare Kommentarfunktion bereitstellt. Nun könnte man zwar argumentieren, dass dies in einem Wiki – wo jeder Besucher den normalen Seiteninhalt umschreiben kann – nicht wirklich sinnvoll ist. Drei Gründe sprechen trotzdem für dieses Konzept:

  1. Es gibt Wikis, in denen nur ein beschränkter Kreis von registrierten Benutzern schreiben soll. In diesem Fall kann man die Inputs von Autoren und Besuchern sauber trennen.
  2. Es gibt Besucher, die zwar gerne einen kurzen Kommentar hinterlassen, die sich aber niemals die Mühe machen würden, den Seiteninhalt umzuschreiben (zumal dies Kenntnisse in der Wiki-Syntax verlangt). Das Kommentarformular ist dann eine niederschwellige Möglichkeit, um das Wissen solcher Besucher nutzbar zu machen.
  3. Das MediaWiki (das man von der Wikipedia her kennt) bietet zu jeder Seite eine Diskussionsseite, so dass der eigentliche Inhalt und die Diskussion darüber sauber getrennt sind. DokuWiki bietet keine solchen Diskussionsseiten, aber das Discussion-Plug-in leistet letztlich dasselbe.

Discussion ist eines der populärsten Plug-ins für DokuWiki – zu recht, kann ich da nur sagen.

Nachtrag zum Spam-Schutz (11. Juli 2009)

Kommentarformulare sind ein beliebtes Ziel von Spammern. Damit Ihr Wiki nicht verslumt, sollten Sie entweder Kommentare moderieren (das Plug-in bietet hierzu ein übersichtliches Backend sowie E-Mail-Benachrichtigung) und/oder das CAPTCHA-Plug-in installieren.

felists: Die TYPO3-Extension, welche die Entwicklung einer eigenen Extension erspart

image

Stellen Sie sich vor, Sie betreiben eine Website für Imker und möchten nun ein Verzeichnis mit Dokumentarfilmen über die Bienenzucht anlegen. Das Verzeichnis soll nicht einfach als Standard-Content-Element abgebildet werden, sondern in strukturierter Form, damit das Verzeichnis durchsucht und ggf. auch exportiert werden kann. Zudem möchten Sie, dass die Besucher Ihrer Website selbst neue Filme erfassen können.

Die meisten TYPO3-Administratoren werden in einer solchen Situation die Entwicklung einer eigenen Extension vorschlagen. Das ist jedoch aufwändig und anspruchsvoll, weshalb viele Dokumentarfilmsammlungen über Bienenzucht auf dieser Welt nie in die Realität umgesetzt worden sind. Das ist schade, denn mit der Extension felists von Daniel Pötzinger gäbe es eine Lösung, welche auch ohne Programmierung zum Ziel führt: Mit felists kann man beliebige Datenbanktabellen definieren, deren Inhalt im Frontend publizieren und sogar ein Bearbeitungsformular für Frontend Users bereitstellen.

image Die Extension installiert ein eigenes Modul in der Backend-Navigation, in dem die Datenbanktabellen (hier heissen sie Listen) verwaltet werden. Ein Assistent führt durch die Erstellung und Bearbeitung der Listen (vgl. Screenshot oben). Dabei steht eine grosse Auswahl an Feldtypen zur Auswahl (vgl. Screenshot rechts), inklusive Referenzen auf andere Tabellen (“Database Relation”), was auch komplexere Datenstrukturen erlaubt. Je nach Feldtyp gibt es dann mehr oder weniger zusätzliche Parameter, mit denen man das Datenbankfeld sowie das Formularelement zur Bearbeitung der Daten definiert. Der ganze Prozess ist zwar nicht trivial, aber gut strukturiert und setzt keine Programmierkenntnisse voraus.

Was mich stutzig macht ist, dass diese Extension zwar schon über zweieinhalb Jahre existiert, aber erst gut 200 Downloads verzeichnet – und dies obwohl sie sogar im Videopodcast von Kasper Skårhøj vorgestellt wurde. Das mag unter anderem daran liegen, dass das Handbuch nicht viel mehr als eine Feature-Liste umfasst – gerade bei dieser nicht ganz simplen Extension wäre eine gute Dokumentation sicher hilfreich. Ansonsten gäbe es nur zwei Erklärungen: Entweder ist die Extension unfertig bzw. fehlerhaft – oder aber wir haben es hier mit einer Perle zu tun, die schlicht nicht diejenige Beachtung gefunden hat, die sie verdienen würde. Wer hat Erfahrung mit felists?

simpleCart(JS): Einfache Shop-Lösung ohne Programmierung und Datenbank

image

simpleCart(JS) ist eine Shop-Lösung, die lediglich aus einer 10.5 KByte grossen JavaScript-Datei besteht und für deren Nutzung man nur HTML-Kenntnisse benötigt. Damit lässt sich sogar auf einer statischen Website ohne Datenbank ein einfacher Shop mit Warenkorb integrieren – ideal für Websites, die nur ein paar wenige Artikel im Angebot haben und nicht viel Aufwand betreiben wollen. Die Zahlung erfolgt ausschliesslich über PayPal: Sobald der Kunde im Warenkorb den “Checkout”-Button anklickt, landet er direkt auf der PayPal-Seite.

image

Den im Screenshot gezeigten Turnschuh-Shop kann man hier als Demo ausprobieren. simpleCart(JS) unterliegt der MIT-Lizenz.