Das ...auslösende Komma

Der OpenStreetMap Kalender und die Weekly

(This page is although available in english: the comma)

Gestern habe ich angekündigt meine Kalenderservices einzustellen.

Auslöser war ein Komma.

Ein Komma in [Boulder, Colorado | Boulder] oder aber eben nicht in [Boulder%2C_Colorado | Boulder]. Kaisers Bart halt.

Schaue ich mir den einen oder anderen Kommentar von gestern an, so stelle ich fest, dass ich meine mir auferlegte Emotionsfreiheit im Web nicht ganz eingehalten habe. Ok, ist passiert, ich gelobe Besserung.

Auch wenn in dem Blog gestern eigentlich schon die sachliche Herleitung meiner Entscheidung steht, möchte ich das noch etwas ausführlicher machen.

Die Technik

Als ich vor 1,5 Jahren Marc auf dem Sommercamp in Essen gesehen habe, wie er den Wiki Kalender von Hand in Markdown gewandelt habe, war mir klar, das kann man besser machen. Ich habe relativ schnell mit Regex mit nachgelagertem Parsen versucht etwas zu stricken, das eben genau diese Aufgabe löst. Ein Quick Hack.

Seitdem wird der Kalender nicht nur im deutschen Blog sondern in der internationalen Weekly publiziert.

Ich wage vorsichtig zu behaupten, dass dies einen kräftigen Push in der Nutzung des Wiki Kalenders gebracht hat.

Mir war klar, dass regex mit nachgelagertem Parser keine dauerhafte Lösung sind. Ausserdem fand ich das Frontend um Termine einzutragen (höflich ausgedrückt) Kacke. Die eine oder andere Vision holt mich schonmal ein, in diesem Fall war es die Idee, einen Editor zu erstellen, der das Eintragen von Terminen erträglicher und das Abonnieren seines Stammtisches einfach macht. Ob die Datenhaltung im Wiki sein sollte oder mit dem Wiki über Synchronisation erfolgt, hätte das Projekt im Laufe seiner Umsetzung schon gezeigt.

Dafür musste aber als erstes der Parser verbessert werden. Da dieser Ansatz im Prinzip nur auf dem Wiki Markdown erfolgreich sein konnte, habe ich mir PEG in Form von PEGJS (Parsing expression grammar) beigebracht und erfolgreich einen Parser (Version 2) geschrieben. Dieser ist in OSMCAL eingeflossen, die Idee mit der Subscription auf bestimmte Suchbegriffe konnte ich damit schon realisieren. Über ein Jahr hatte ich den Wiki Kalender bei mir im Calendar abonniert.

Im Juli wurde der Wiki Kalender um hCalender Microformats erweitert. Jetzt gibt es 3rd Party Tools, mit denen man den Kalender einfach parsen kann. Diese (nicht abgesprochene) Änderung habe ich mehr schlecht als recht in meinem Parser Version 1 nachgezogen, der Parser Version 2 hat diesen Wechsel nicht überlebt, da ich bisher keine Zeit gefunden habe, die Änderung einzubauen und getestet in Produktion zu nehmen.

Theoretisch gibt es jetzt aber Version 3 eines Parsers, ein hCalender Microformat Parser.

Das Komma

Und dann kam das Komma. Und meine schnelle Lösung , === %2C. Und die Aussage, dass das “terrible” aussieht und deshalb nicht akzeptiert wurde. Des Kaisers Bart halt.

Da mein Parser Version 1 im Wiki Markup die Links einfach zerschneidet bevor er sie interpretiert, sehe ich keinen Quickfix für dieses Problem. Die nicht zu Ende entwickelte Version 2 zeigt eindeutig, dass mir die Zeit fehlt, Dinge in diesem Umfeld weiterzuentwickeln. Damit stehe ich einer Weiterentwicklung des Kalender Templates natürlich im Weg.

Dennoch möchte ich die wenige Zeit lieber für den Kern von OSMBC nutzen, um dieses Tool nicht aufs Spiel zu setzen. Bei x-zig Bibliotheken hat man schon genug damit zu tun seine Sourcen “safe” zu halten.

Die Transformation und Weiterentwicklung der Kalender Services sollte deshalb jemand anderes übernehmen.

Wie kann es weitergehen

Ich halte den Kalender für extrem wichtig, und finde es super, das er in jeder Weekly in leserlicher Form dargeboten werden.

Nun gibt es zwei Möglichkeiten.

Man hinterfragt die Entscheidung von anno Tuk den Kalender im Wiki zu pflegen, und schaut, ob es eine OpenSource Software gibt, die OAUTH unterstützt, und ein für uns brauchbares Tagging hat. Damit setzt man dann einen Kalender Server auf, der in das Wiki und die Weekly abgeleitet werden kann. Die Welt und die Software hat sich weiterentwickelt.

Oder man versucht über Dritt-Tools, die neuen hCalender Features zu nutzen. Oder man versucht über Dritt-Tools, die neuen hCalender Features zu nutzen. Wie das aussehen könnte habe ich in einem Google Spreadsheet quick and dirty ausprobiert.

Die hier vorgeschlagene Lösung nutzt einen hCalender2JSON Converter von Glenn Jones und diesen Blogpost.

Alles was am Ende Markdown oder HTML rauswirft kann vom weekly-Team weiterverarbeitet werden, und lässt sich am Ende auch in OSMBC integrieren.

Falls wer Interesse hat, können meine Entwicklungsgehversuche aus OSMBC oder OSMCAL auch gerne als Steinbruch genutzt werden. (Das wäre Option 3).

Wird der Kalender im Wiki gepflegt, sollte Zeit für die eine oder andere Formatdiskussion mitgebracht werden, das hatte ich sträflich unterlassen.

Wenn ich Euch zum Disqustieren nicht ebenda anmelden wollt, kann ich gerne einen Forum Link in diesen Post aufnehmen.

 
comments powered by Disqus