Prof. Dr. Detlef Stern

Zettelkasten

Für einen Wissensarbeiter ist es wichtig, die eigenen Gedanken wenigstens für sich zu dokumentieren. Was man nicht dokumentiert hat, bleibt ein Hirngespinst. Wissensarbeit auch immer Lernarbeit ist, sollte ein Wissensspeicher mitwachsen.

Dafür gibt es viele Möglichkeiten. Viele Jahre habe ich die Software TheBrain verwendet und dafür bei jeder neuen Version Lizenzgebühren bezahlt. Bis die Version für mein damaliges Betriebssystems, auch dank des Betriebssystems, kaum benutzbar wurde. Zum Glück gab es eine Exportschnittstelle. Später nutzte ich reale und elektrifizierte Mindmaps, diverse Wiki-Implementierungen, Notizbücher, Textdateisammlungen, Evernote, Trello, you name it.

Wirklich nachhaltig war für mich keine Technologie, wohlgefühlt habe ich mich bei keiner.

Parallel beschäftigte ich mich immer wieder mit dem Konzept des Zettelkastens, wie er u.a. von Niklas Luhmann verwendet wurde, Beeindruckt hatte mich die Ausstellung Zettelkästen. Maschinen der Phantasie im Deutschen Literaturarchiv Marbach. Die Produktivität, die aus den Zettelkästen stammte, war direkt spürbar. Ebenso die Pflege des eigenen Wissens. Der Informatiker in mir überlegte, wie man Zettelkästen in Software umsetzen könnte. Wenn man so will, war dies das Motte meines ersten Forschungs- und Fortbildungssemesters, auch wenn ich die Ausstellung während dieses Semesters besuchte.

Natürlich gibt es schon Software, die einen Zettelkasten realisiert. Zettelkasten 3 war mir zu unübersichtlich. Zu viele Felder konnte man ausfüllen, nur um einen einfachen Gedanken zu dokumentieren. Zudem erschien mir das Datenformat, in dem die Zettel gespeichert wurden, etwas kompliziert. Ich habe meine Lektion von TheBrain gelernt. Dann gibt es noch ConnectedText (proprietät, nur Windows), DEVONthink (proprietät, nur Apple), Notational Velocity (nur Mac, letzte Version 2011), nvALT (nur Mac), lexiCan (proprietät, nur Windows), Scheiden alle aus, wie auch Cloud-Dienste (Klaut-Dienste?), wie Notion, Roam oder Zettelkasten.org, die Zettel mit der Blockchain (von der manche denken, es sei die Lösung für alles, wie war noch mal das Problem) verknüpfen wollen. Dazu kommen Lösungen, welche den Texteditor der Wahl aufhübschen. Lösungen, die auf Markdown basieren, z.B. The Archive (nur Mac) oder Zettlr, kommen ebenfalls nicht infrage. Zu häufig habe ich ein Markdown-Format in ein anderes Markdown-Format konvertieren müssen. Wikis, wie auch das lokal installierbare TiddlyWiki haben den Nachteil, dass dort Seiten über ihren Namen identifiziert werden, nicht über eine unveränderbare Kennung.

Dabei will ich nur meine persönlich(st)en Notizen verlässlich und dauerhaft speichern und über diverse Findefunktionaliäten verknüpfen können. Die Notizen sollen sowohl über einen selbstgehosteten Dienst abruf- und änderbar sein, als auch lokal mit meinem Lieblings-Editor. Die Notizen sollen zwischen meinen Geräten synchronisierbar sein, so dass ich ggf. daran auch offline arbeiten kann. Eine App wäre nicht schlecht. So etwas in der Art.

Irgendwie kam ich ins Gespräch mit zwei Kollegen aus dem Nachbarbüro. Es stellte sich heraus, dass der eine mit Hilfe eines externen Entwicklers sich eine Zettelkasten-App fürs iPad entwickeln lies, die leidlich funktionierte. Der andere hatte eine Projektudie gestartet, bei dem mittels Textmining überprüft werden sollte, ob die Verweise, die Niklas Luhmann in seinem Zetteln erfasst hatte, nicht auch mittels statistischer Analysen (heutzutage nennt man die Machine Learning oder gar Künstliche Intelligenz) ermitteln kann. Gutm dass man mal miteinander redet.

Informell gründeten wir eine AG Zettelkasten, bei der jeder der Beteiligten ein entsprechendes Interessa hatte. Meine Aufgabe, gewissermaßen als Grundlage, ist die Realisierung eines webbasierten Zettelkasten-Services, der die Zettel nicht nur nach HTML übersetzen kann, sondern auch die Struktur der Zettel liefern kann. Gewissermaßen der Syntaxbaum, der durch das Einlesen eine Markupsprache entstanden ist.

Genau, es gibt eine eigene Markupsprache. Markdown ist es aus genannten Gründen nicht. Ich habe mich dabei an Implementierungen wie TiddlyWiki und Pandoc orientiert, wie auch an Standards wie WikiCreole, HTTP und eMail. Arbeitsname ist Zettelmarkup.

Natürlich bin ich damit noch in größerer Ferne von einer ersten Version, die selbstverständlich Open-Source sein wird. Aktuell realisiere ich den zweiten Prototyp in Go. Den ersten Prototyp hatte ich noch, ebenfalls in Go programmiert, als klassischen Sprachübersetzer mit lexikalischer und syntaktischer Analyse konzipiert. So wie ich es im Studium klassisch lernte. Um dann selbst zu lernen, dass Zettelmarkup kein Programmiersprache wie Go, Python & Co ist. Natürlich gibt es schon einen Zettel, in dem ich dieses Lernen dokumentierte.

Für die Zukunft plane ich weitere Posts, in denen ich über dieses Nebenprojekt (ich habe ja einen Hauptberuf) berichten werde. Themenwünsche kann man mir gerne über die bekannten Wege mitteilen.