About every year or so I decide to change note-taking apps. Or at least I change most of my notes to a new app. This time I'm going back to an old app, but because of a "new" note-taking paradigm. The one I'm going back to is Org Mode, but with a twist. In this post, I hope to look at some of the new ideas in note-taking and some of the apps available.

The new paradigm that I'm talking about is backlinking. It's actually not a new idea at all of course, but there have been many apps that have started to take advantage of backlinking. The one that launched off the fad was Roam Research. Many of these tools are based on or enable, a note-taking method called Zettelkasten.

Zettelkasten

Zettelkasten is a technique of note taking and indexing popularized by Niklas Luhmann, a German sociologist from the middle of the 20th century. Zettelkasten, literally "slip box", was a note-taking method in which small slips of paper were ID'd and linked to one another, creating a linked system of knowledge that Luhmann could then use in his books, research, and papers. As the links were maintained in two directions, ideas could be backward linked to other ideas. Ideas from various sources could then form a new network and hopefully, new links could be formed between information. There's more to it, such as the idea that each note should be an atomic, well-formed idea. For more information, and because I'm failing to explain it, visit https://zettelkasten.de/.

I won't pretend to be an expert in Zettelkasten, and all of this is new to me. Frankly, I'm not even sure that the Zettelkasten method would be useful to me as I need longer form notes on many of the things that I do. But the idea of backlinking notes so that you can refer to notes that refer to the note that you're on seems extremely powerful. It feels like the next innovation in note-taking, beyond simple outlining or linking, precisely because you're essentially forming a distributed network of notes.

Let me give you an example. Say that I'm working on Kubernetes and can't remember the name of a tool that I had used. I can just pull up the Kubernetes note and look at the backlinks and see which notes are tagged as Kubernetes. Why couldn't I just create a link on the Kubernetes note? Well, of course, I could, but that would require opening that note and adding a link that may have nothing to do with the context for the primary Kubernetes notes.

Or another example, I am taking notes on a sermon being preached on John 3. I can then dive into John 3's note and look at all other sources tagged with John 3, including sermon notes, book notes, or personal devotional notes. From there I could dive into individual topics such as love or the kingdom of God.

At least, that's how I hope it will work in practice. Again, I'm just getting started

Tools

It seems that with the release of Roam Research, there have now been a plethora of tools in development that work off of the idea of backlinks, as well as atomic thoughts. I've done a lot of research in the last week, and have formed some opinions about some. Let's start first with the note-taking app I'm coming from:

Notion

Notion seemed to take off in 2018-2019 as the premiere note-taking app. Indeed, Notion has introduced backlinks in a recent release.

I like Notion, and will both keep paying for it and taking notes there. It has a lot of power in organizing and reorganizing notes, as well as pulling in other content such as code, videos, images, etc. It even goes so far as to include database-like tables and Kanban-style boards.

Backlinks in Notion seem to primarily work at the "page" level, rather than the block//heading level like Roam Research. And while I love Notion as a clean interface for notes, I'm not wild about its lack of capabilities in making TODOs and alerts and finding notes after the fact. Its search is great but basic.

Roam Research

Roam Research seems like a really powerful system, particularly for a research-style Zettelkasten. I honestly have not tried it, both because I didn't get into the trial, but now because of the cost and the concern of people losing notes and the lack of good backups. Most of the posts I've seen about note stability have disappeared, but you can see one graveyard here: https://www.reddit.com/r/RoamResearch/comments/hsrg0z/lost_all_my_notes_need_recommendations_for/. There was even a post today about it: https://jeffchen.dev/posts/Recovering-Lost-Roam-Notes/

Frankly, I prefer open source and being in control of my own content and notes. I know Notion doesn't fit into that well, but it also seemed ahead of its time to me.

TiddlyWiki

TiddlyWiki has been around a while and was the note system I used before Notion. TiddlyWiki is many things, but at its heart, it was a single file HTML that you could download and make changes to in wiki syntax. TiddlyWiki has had backlinks for a while, possibly even before Roam Research, but recently the community has released some versions specifically for backlinking: Drift and Tiddly Research are two that I've tried out.

They're great, but there are a few problems that I've had with TiddlyWiki that just make me hesitant. I had a lot of notes in it as I was working in Seminary, wrote a custom Bible linking plugin, etc, but updating it was a nightmare on the node version with my customization. For each upgrade, I'd have to manually diff my plugin changes against the upgrades. Of course, this may have just been me not knowing what I was doing, but it still wasn't fun. Also, just the speed of entering notes and using the mouse doesn't appeal to me. Being a Vim guy, I like my keyboard.

Obsidian

Obsidian is a recent and gorgeous option for note-taking. It was actually my first introduction to backlinking and this whole area of decentralized notes. It's a commercial-style app (more on that below), but also works off of just a directory of markdown files. So you get to keep your content regardless. It feels great to use, I like its editor (not as well as Typora or Notion though), and it's fast, responsive, and the keyboard shortcuts are great. It even has a basic Vim mode.

My only hangups are: if you use it for commercial purposes, the license becomes a pay-as-you-go SAAS license. The free license is just for personal use. Also, it's not open source, so there's always the risk that the company could go under and disappear, or worse, that they start charging way after I'm invested in it. Sure, they're just markdown files...I could make my own note-taking app if that were the case...but I don't have that much time or interest. Also, the backlinks seem to just be at the note level, but I didn't mind that as much in this app.

Still, if you're looking for a personal note-taking app that's easy to get into, supports backlinks, has the graph, uses markdown, is modern-looking, and is nice to use, totally give Obsidian a try.

Joplin

Joplin is one that I've just tried a little bit. It looks fine as far as an editor, has nice backlinking, etc. The one hangup that made me put it down quickly is that links are always based on note ID, so you have to find a note to get its ID and insert it. It didn't seem nearly as fast or practical as I wanted. It is open source though, and worth a look.

Trilium

Trilium is an app I see recommended often. It's also free and open source. It claims to have automatic markdown conversion, but I couldn't get it to work. I gave up pretty soon after that.

Zim

Zim is a desktop wiki that I've used quite a lot in the past. It also has a backlinks plugin. It works great, is open source as well, and is very quick for taking notes. The negatives for this one are that it looks old and that it uses a custom wiki syntax that I don't like as well as markdown or Org.

MindForger

MindForger kind of does its own thing. It's difficult to explain, but worth checking out. It kind of has backlinks in that it has notes that are related to each other, but in more of an AI/intuitive way than in a manual way. It takes the headlines of Markdown files and makes them notes, but for each note lets you embed other top headlines/etc. It's weird but worth checking out. For a great intro, watch the video at https://www.youtube.com/watch?v=PlW2e1X3O-I.

MindForger is open source and seems really powerful. I'm going to keep playing with it. The only negative is that it's got the whole split-screen preview/markdown editor like many of the others on this list, but there's no graphical component to the editor at all. The keyboard shortcuts are multi-key and not configurable as well, but they're intuitive.

Foam

Foam is a plugin to Visual Studio code that emulates many features from Roam/Obsidian. It has backlinks, a graph, and looks decent.

Honestly, though, I don't like Visual Studio code, it's not the greatest editing experience, and the backlinks seem majorly delayed from saving. But maybe that was just my experience. This is one that has a lot of promise and I would keep my eye on in the future, but seems it has a little ways to go.

I'll give an honorable mention to Dendron, which seems to be at least on par with Foam. It also has a hierarchical system but seems to keep all of the files in the same directory using a dot-separated notation. Also worth checking out and watching, but also had delayed backlink processing and note a great markdown editing experience.

Org-roam

Org-roam is where I landed for now. Org-roam is an extension of the famous Org Mode for Emacs. I used Org Mode a LOT when I was new to Emacs. It's really crazy how deep the rabbit hole goes for Org Mode. Org Mode is best described as an outliner, journal, day planner, calendar, TODO list, kanban board, interactive coding tool, TODO capture tool (including linking to source code lines, a browser, or even against a pdf as you're reading it), and presentation software. I'm sure there are a dozen or two things I'm missing too.

I'll caveat this though...you have to be a little crazy to use org-mode. Configuring it alone can be a trial in insanity, but once you master it, you can make it work to whatever work-flow you want. That was its downfall for me. I had too much going on, couldn't keep track, and lost control of it all.

Org-roam though seems to change the whole game for me. You can easily link notes, see backlinks, link specific headlines (like Roam Research), make custom captures, and search files and edit files using all the power of emacs and Evil (the best Vim emulation mode I've ever seen in an editor).

It may be a deep rabbit hole, but one I've jumped into again, and the whole backlinking/two-way/decentralized notes seem to be game-changing.

Summary

There seems to be some great work coming out in the tools area. If there'd be a perfect tool, I'd describe it with these features:

  • Modern interface
  • Keyboard shortcuts, Vim mode
  • Headline/outline-level backlinking
  • Graph of note connections
  • Able to handle thousands of notes
  • Locally hosted, no SAAS
  • Open Source
  • Markdown
  • An interface as nice as Typora for writing markdown
  • Linking embeds/dragging/etc as well as Notion

There seems to be a lot of other tools, and I tried a lot of them. If you find any that come close, send me a note.

Org-roam meets some of those, at least enough to make me interested, particularly given the power that org-mode already has. If there's any interest I'll give an update in a few months after I get notes ported/entered.

If you're just looking for a great note-taking app, give Obsidian a look.