Ein Mann arbeitet nachts am Computer

Von Roam Research zu Obsidian wechseln: Warum das nicht so einfach ist

Conor White-Sullivan, Gründer und CEO von Roam Research, Inc. hat einen bemerkenswerten Satz geprägt: «Roam is simple, but not easy.» Das Gleiche gilt für den Wechsel von Roam zu Obsidian. Die beiden Tools haben viele Ähnlichkeiten, aber es gibt Unterschiede in den Details, die für Power-User entscheidend sein können. Und obwohl Obsidian ein schönes Import-Plugin bietet, das einen Roam Graph in einen Obsidian Vault umwandelt, ist das Ergebnis nicht immer so, wie man es erwarten würde. Wenn Sie also mit Roam unzufrieden sind und einen Wechsel zu Obsidian in Erwägung ziehen, dann sollten Sie jetzt weiterlesen.

Im ersten Teil dieses Artikels möchte ich einige Dinge hervorheben, die in Obsidian anders funktionieren und in Roam Research besser gelöst sind. Im zweiten Teil werde ich auf einige Unzulänglichkeiten des Import-Plugins von Obsidian hinweisen, die für die meisten Benutzer zu unerwünschten Ergebnissen führen.

Was ich nicht behandeln werde, sind die Gründe, Roam hinter sich zu lassen und zu Obsidian zu wechseln. Wenn Sie diesen Artikel lesen, haben Sie wahrscheinlich schon Ihre eigene Meinung zu diesem Thema und müssen nicht mehr überzeugt werden.

Teil 1: Was wir an Roam lieben und was Obsidian (noch) nicht bietet

Roam Research und Obsidian sind beides Werkzeuge für das persönliche Wissensmanagement (englisch Personal Knowledge Management, kurz PKM). Beide bieten bidirektionale Links und Transklusionen – zwei Konzepte, die aus meiner Sicht wegweisend und unverzichtbar sind. Trotzdem arbeitet es sich mit den beiden Tools nicht gleich.

In vielerlei Hinsicht ist die Arbeit mit Obsidian angenehmer und effizienter als mit Roam. Auf der anderen Seite gibt es Dinge, die einen Roam-Anwender irritieren oder sogar gewisse Arbeitsabläufe verunmöglichen.

Obsidian ist kein Outliner

Der wichtigste Unterschied besteht darin, dass Roam ein Outliner ist, Obsidian aber nicht. Das mag überraschen, wenn man weiss, dass die beiden Gründer von Obsidian, Shida Li und Erica Xu, auch Dynalist entwickelt haben, was nichts anderes als ein Outliner ist.

Auch Obsidian verfügt natürlich über grundlegende Gliederungsfunktionen. Einige von ihnen sind standardmässig inaktiv, weshalb die Outlining-Fähigkeiten von Obsidian oft unterschätzt werden. Zudem gibt es einige populäre Community-Plugins wie Outliner und Zoom, die diese Fähigkeiten noch erweitern.

Andererseits: Vor allem das Verschieben von Blöcken funktioniert nicht so reibungslos, wie Sie es von Roam kennen. Und weil das Reorganisieren von Notizen die Essenz des persönlichen Wissensmanagements ist, scheint mir das ein erhebliches Manko zu sein.

Obsidian zwingt Sie dazu, über Ihre Dateistruktur nachzudenken

Wie Sie wahrscheinlich wissen, speichert Obsidian Ihre Daten nicht in einer Datenbank in der Cloud, sondern lokal auf Ihrem Computer. Dies geschieht in Form von Textdateien, wobei jede Notiz durch eine eigene Datei repräsentiert wird.

Über den Datei-Explorer in Obsidian können Sie all diese Dateien sehen, öffnen, löschen und sie in Ordnern organisieren – ganz ähnlich wie im Windows Explorer oder im macOS Finder. Dies dürfte für viele Benutzer ganz selbstverständlich sein; aber es kann sich seltsam anfühlen, wenn Sie von Roam kommen, wo Seiten nur Datenbank-Einträge ohne jede Ordnung sind.

Ich persönlich jedenfalls fühle mich ständig genötigt, meine Dateiablage aufzuräumen, und das nervt mich. Natürlich können Sie den Datei-Explorer einfach geschlossen lassen und versuchen, Dateien und Ordner zu vergessen, aber ich bezweifle, dass Ihnen das gelingen wird. Und es gibt Situationen, in denen die Verwendung des Datei-Explorers fast unvermeidlich ist.

Tags in Obsidian sind Tags – keine Links

In Roam gibt es drei Möglichkeiten, einen Link auf eine Seite zu erstellen:

  1. Links
    [[Lorem ipsum]]
  2. Tags
    #LoremIpsum or #[[Lorem ipsum]]
  3. Attributes
    Lorem ipsum::

Für Roam-Neulinge mag das verwirrend sein – ich persönliche schätze es extrem, dass mich ein Tag auf die gleiche Seite führt wie ein Link desselben Namens. In Obsidian hingegen sind Links, Tags und Page Properties (entspricht den Attributes in Roam) drei unterschiedliche Konzepte, die nichts miteinander zu tun haben. Das ist einfacher zu verstehen, weil es in den meisten Apps so gehandhabt wird, aber aus meiner Sicht ist es ein gewichtiger Nachteil von Obsidian gegenüber Roam.

Somit müssen Sie als Roam-Nutzer erst einmal herausfinden, wie Sie die Tags von Obsidian einsetzen wollen. Allerdings ist es eher ein Vorteil als ein Nachteil, ein weiteres Konzept für die Organisation seiner Notizen zu haben.

Es gibt keine Block References in Obsidian

In Obsidian kann man entweder auf einen Block verlinken oder einen Block einbetten (zusammen mit all seinen untergeordneten Blöcken). Auch wenn das für viele Anwendungsfälle ausreicht, so werden Sie als Roam-Benutzer die Block References vermissen, die es Ihnen ermöglichen, nur einen einzigen Block (ohne seine untergeordneten Blöcke) einzubetten.

Embeds und Mentions können in Obsidian nicht direkt bearbeitet werden

Sei es in Form eines Block Embeds oder einer Block Reference: Wo immer Sie in Roam Inhalte sehen, die von einer anderen Seite stammen, können Sie diese direkt an Ort und Stelle bearbeiten, ohne die aktuelle Seite zu verlassen.

Das ist in Obsidian nicht der Fall: Hier sind Embeds und Mentions (wie References hier genannt werden) nur lesbar. Natürlich sind sie mit ihrem Ursprung verlinkt, so dass man schnell zu der entsprechenden Notiz springen und diese dann bearbeiten kann. Aber fortgeschrittene Roam-Benutzer werden die direkte Bearbeitungsmöglichkeit vermissen.

Notebook-Computer, auf dem ein Schema zum Wissensmanagement zu sehen ist

Wir beraten Sie beim Wissensmanagement

Martin Sauter, der Gründer von Metoki, ist Spezialist für Wissensmanagement. Als Chief Knowledge Officer eines Schweizer KMU hat er jahrelange Praxiserfahrung, und als Absolvent des CAS Wissensmanagement & Organisationales Lernen kennt er auch die theoretischen Grundlagen.

Gerne beraten wir Sie bezüglich Methoden und Software für das Knowledge Management in Ihrem Unternehmen. Zudem bieten wir individuelle Coachings für das persönliche Wissenmanagement.

Teil 2: Was nicht funktioniert, wenn Sie Ihren Roam Graph in einen Obsidian Vault migrieren

Die Migration all Ihrer Notizen von Roam zu Obsidian wäre früher ein ziemliches Abenteuer gewesen. Wenn Sie schon zu diesem Thema recherchiert haben, sind Sie wahrscheinlich auf Tutorials gestossen, die zeigen, wie man Markup-Dateien exportiert und sie mit Skripten für Obsidian vorbereitet. Auch das Core Plug-in «Format Converter» dürfte Ihnen bei dieser Gelegenheit begegnet sein.

Glücklicherweise hat sich dies in den letzten Jahren deutlich gebessert. Aber leider hat dieser Prozess immer noch einige Ecken und Kanten.

Was der Obsidian Importer leistet

Gemäss der offiziellen Obsidian-Dokumentation ist die Migration Ihrer Daten von Roam zu Obsidian ein Kinderspiel: Man exportiert den Graphen im JSON-Format und importiert ihn mit dem Obsidian Importer.

Dialogfenster des Obsidian Importers

Dieser Vorgang ist in der Tat sehr einfach. Er erlaubt es sogar, automatisch alle Anhänge (Bilder, PDFs usw.) herunterzuladen, die Roam auf Googles Firebase-Servern speichert. Das ist wichtig, wenn man lokale Datenspeicherung ernst nimmt.

Fortschrittsanzeige des Obsidian Importers

Je nach der Grösse des Graphen und der Anzahl der Anhänge kann dieser Vorgang eine Weile dauern. Aber alles, was Sie dabei tun müssen, ist auf die hübsche Fortschrittsanzeige zu schauen – und zu hoffen, dass die Zähler für übersprungene («skipped») und fehlgeschlagene («failed») Anhänge auf Null bleiben.

Warum Obsidian bestimmte Roam-Seiten nicht importieren kann

Nach meiner Erfahrung gibt es mindestens zwei Gründe, warum Obsidian gewisse Seiten nicht importieren kann.

Der erste Grund: Roam unterscheidet bei Seitentiteln zwischen Gross- und Kleinschreibung. Mit anderen Worten: Sie können zwei unterschiedliche Seiten mit den Titeln «E-Mail» und «E-mail» in einem Graphen haben. (Natürlich ist das in der Regel nicht sinnvoll, aber es kommt vor).

Windows und macOS hingegen unterscheiden bei Dateinamen nicht zwischen Gross- und Kleinschreibung. Und weil beim Import in Obsidian jede Roam-Seite in eine Markdown-Datei mit dem Seitentitel als Dateinamen konvertiert wird, führt dies zu einem Konflikt. Im obigen Beispiel erstellt der Obsidian Importer also die Datei E-Mail.md, kann dann aber keine Datei für die zweite Seite erstellen, weil das Betriebssystem dies unterbindet.

Die Ursache für diese Art von Importfehlern ist also nicht die Schuld von Obsidian. Aber Obsidian tut auch nichts dafür, um dieses vorhersehbare Problem zu lösen. Zumindest eine klare Fehlermeldung (z. B. «Datei existiert bereits. Bitte prüfen Sie, ob der importierte Roam Graph Seiten gleichen Namens enthält (Gross-/Kleinschreibung.») wäre keine Luxus. Noch besser wäre es, wenn der Importer im obigen Beispiel die zweite Seite als E-Mail (2).md importieren würde.

Der zweite Grund für fehlgeschlagene Importe ist noch weniger offensichtlich und ein wenig mysteriös: Falls ein Seitentitel einen Schrägstrich enthält (mehr zu Schrägstrichen etwas später), und falls direkt davor ein Leerzeichen steht, weigert sich der Importer, diesen Schrägstrich zu verarbeiten (Bug Report).

Wie der Obsidian Importer Schrägstriche in Seitentiteln behandelt

Roam erlaubt so ziemlich jedes Sonderzeichen in Seitentiteln. Eines, das ich persönlich recht häufig verwende, ist der Schrägstrich (Forward Slash). Hier einige Beispiele:

  • ISO 14289 (PDF/UA)
  • Why links are important for learning (PKM Magazine 05/2024)
  • Yellow Submarine (Lennon/McCartney 1966)

Nun lässt Windows leider keine Schrägstriche in Dateinamen zu, und somit kann beim Import dieser Seiten keine Markdown-Datei gleichen Namens angelegt werden. Auch das ist nicht Obsidians Schuld – aber die Art und Weise, wie der Importer mit dieser Situation umgeht, ist sehr speziell. Anstatt das verbotene Zeichen einfach durch ein anderes zu ersetzen, wird der Titel an der Position des Schrägstrichs in zwei Teile geteilt: Der erste Teil wird zum Namen des Ordners, in dem die Seite liegt – der zweite Teil wird zum Dateinamen.

Im obigen Beispiel führt dies zu folgender Dateistruktur:

Dateistruktur mit Ordnern und untergeordeten Dateien

Das ist natürlich in den meisten Situationen nicht erwünscht. Und im Moment sehe ich nur die Möglichkeit, die Schrägstriche vor dem Import aus den Seitentiteln zu entfernen – entweder direkt in Roam oder durch ein Skript, das die JSON-Exportdatei vorverarbeitet. Diesen Punkt finde ich besonders mühsam und ärgerlich.

(Um fair zu bleiben: Es gibt auch Situationen, in denen dieses Verhalten sinnvoll ist. Wenn Sie zum Beispiel in Roam jedem Buchtitel «Buch/» und jedem Filmtitel «Film/» voranstellen, werden automatisch alle Ihre Bücher im Ordner «Buch» und alle Ihre Filme im Ordner «Film» gespeichert.)

Wie der Obsidian Importer mit anderen Sonderzeichen umgeht

Windows kennt noch weitere Einschränkungen, wenn es um Sonderzeichen in Dateinamen geht: Es verbietet die folgenden Zeichen:

\ / : * ? " < > |

Da Obsidian diese Zeichen in Dateinamen nicht verwenden darf, werden sie vom Importer einfach entfernt. Das Gleiche passiert mit einigen anderen Zeichen, die unter Windows erlaubt sind, aber die Links in Obsidian zerstören würden:

^ [ ] |

Wenn Sie in Roam diese Sonderzeichen verwendet haben, werden Ihre Seitentitel also nach dem Import in Obsidian ein wenig anders aussehen. Und obwohl es verständlicherweise unmöglich ist, diese Zeichen 1:1 zu übernehmen, so würde ich mir doch zumindest wünschen, dass der Importer dem Benutzer die Wahl lässt, ob er diese Sonderzeichen durch ein anderes Zeichen ersetzt oder aber gelöscht haben möchte.

Wie der Obsidian Importer Aufzählungen formatiert

Da Roam ein Outliner ist, werden alle Informationen in Form von Aufzählungen exportiert. Der Obsidian Importer behält diese Aufzählungen bei – soweit die gute Nachricht. Die weniger gute Nachricht ist, dass die Einrückung auf Quellcode-Ebene nicht ganz korrekt ist (Bug Report).

Solange Sie sich eine aus Roam importierte Notiz nur ansehen, sieht alles gut aus. Sobald Sie die Notiz aber bearbeiten, werden Sie auf Probleme stossen. Im schlimmsten Fall müssen Sie die Aufzählung manuell neu formatieren.

Angesichts der Tatsache, dass alle Ihre Notizen Aufzählungen sind, wenn Sie von Roam zu Obsidian wechseln, ist das ein echtes Problem. Und obwohl ich zuversichtlich bin, dass ein Entwickler das Problem mit vertretbarem Aufwand lösen könnte, ist dies bisher nicht geschehen. Somit könnte dies ein Grund dafür sein, dass Sie vorerst nicht von Roam zu Obsidian wechseln wollen.

Warum Block References und Block Embeds nicht wie erwartet importiert werden

Wie wir bereits besprochen haben, hat Obsidian ein Äquivalent für Block Embeds, nicht aber für Block References. Der Importer verarbeitet trotzdem beide Typen – aber das Ergebnis hat mehrere Schwächen.

Das Mindeste, was man erwarten würde, wäre doch, dass Block Embeds – also dasjenige Konzept, das in beiden Anwendungen existiert – erhalten bleiben. Leider ist dies nicht der Fall. Nehmen Sie das folgende Beispiel eines Block Embeds in Roam Research:

Block Embed in Roam Research: Der eingebettete Block hat einen untergeordneten Block.

Das Ergebnis nach dem Import in Obisidian sieht so aus:

Das Resultats nach dem Import in Obsidian: Der untergeordnete Block des eingebetteten Blocks geht verloren.

Hier gibt es drei Probleme (Bug Report):

  • Unser Block ist nicht mehr eingebettet, sondern verlinkt. Dadurch kann man zwar immer noch das Original finden, aber das ist nicht der eigentliche Sinn einer Einbettung.
  • In Roam eingebettete Blöcke enthalten auch allfällige untergeordnete Blöcke – der Obsidian Importer ignoriert diese ganz einfach.
  • Der Link zum Originalblock ist nicht korrekt formatiert und funktioniert deshalb nicht.

Und was ist mit den Block References? Diese werden auf ganz ähnliche Weise behandelt – und haben somit ziemlich die gleichen Probleme (Bug Report).

Transklusionen (der allgemeine Begriff für Block References und Block Embeds) sind eines der wichtigsten Konzepte moderner Denkwerkzeuge, zusammen mit den bidirektionalen Links. Die Art und Weise, wie der Obsidian Importer hier vorgeht, ist enttäuschend – letztlich zerstört er die bestehenden Transklusionen. Und auch hier haben die Entwickler bisher nicht reagiert.

Was der Obsidian Importer sonst noch kann – und was nicht

Wenn man ins Detail geht, formatieren Roam und Obsidian viele Dinge ein wenig unterschiedlich. Einige dieser Unterschiede werden vom Importer kompensiert:

  • Daten (Roam: April 30th, 2024 – Obsidian: 2024-04-03)
  • Aufgaben (Roam: {{[[TODO]]}} oder {{[[DONE]]}} – Obsidian: - [ ] oder - [x]
  • Hervorhebungen (Roam: ^^Lorem ipsum^^ – Obsidian: ==Lorem ipsum==

Andere gängige Elemente wie Anführungszeichen, Tabellen, horizontale Linien oder eingebettete PDFs werden nicht konvertiert und erscheinen als Rohdaten in den Obsidian-Notizen. Und jene Elemente, für die es in Obsidian kein Äquivalent gibt (z.B. Queries oder Berechnungen), fehlen schlicht und einfach.

Fazit: Eine Migration von Roam zu Obsidian fordert ihren Tribut

Sobald man den Prozess verstanden hat, ist die Migration eines Roam Graphen in einen Obsidian Vault einfach und schnell. Mein eigener Graph hat mehr als 11’000 Seiten, und das Importieren der JSON-Exportdatei dauerte nur eine Viertelstunde (ohne Herunterladen der Anhänge).

Der Obsidian Importer ist sehr benutzerfreundlich und leistet in vielerlei Hinsicht gute Arbeit. Aber: Es gibt einige gröbere und viele kleine Probleme im Konvertierungsprozess. Teilweise wären sie lösbar, wenn sich die Entwickler des Importers dazu aufraffen könnten. Teilweise sind sie aber auch prinzipbedingt und zeigen auf, dass die Datenportabilität bei PKM-Tools seine Grenzen hat, selbst wenn es entsprechende Export/Import-Funktionen gibt.

Solange Sie keine oder nur wenige Notizen in Roam haben, die Sie in Obsidian überführen müssen, dann ist eine Wechsel durchaus möglich. Wenn Sie allerdings einen umfangreichen Graphen in Roam haben und intensiv mit Block References, Block Embeds oder Queries arbeiten, dann sollten Sie sich einen Wechsel von Roam zu Obsidian zweimal überlegen.