Zettelkasten

The Zettelkasten used by Niklas Luhmann consisted of numbered index cards, or slips, filed in six large cabinets. Each slip contained a single and complete idea (a concept his followers call “atomicity”). An idea might be as short as a simple sentence, or as long as a paragraph—but it had to fit into the space of a zettel, the equivalent of a half-sheet of paper.

In myzettel i describe how this is implemented digitally using Org Roam in Emacs .

The method

The following sections explain the method used by Niklas Luhmann .

Tools

Cards or slips, boxes or containers, binder rings, punch are used.

Card or slip size

Paper or index Card or paper slip size can range from 3*5 to half A4 size. The size used by Luhmann is A6.

Container or box

The individual numbered notes are either stored in special boxes or binders with metal or plastic rings. A single low impact hole punch is needed as well

Connecting ideas

Luhmann connected his ideas in two ways. Unique index number and explicit reference links.

Unique index number

First, each card had a unique index number, or address, using numbers, letters, and occasional punctuation based on a branching hierarchy. So instead of numbering his cards in a traditional “1,2,3” sequence, the first card in Luhmann’s system might be 1, but the second card would be 1/1 if it continued the topic. The third card would be numbered 1/2, but if it only extended the idea on the second card, it would be numbered 1/1a. And so forth. The LessWrong website has a great description1 of this addressing system if you really want to geek out.

The second method of connecting cards was through explicit reference links. At the bottom of each card, Luhmann would jot down the address of cards with related ideas but positioned under other topics. Following these links, Luhmann could jump across his sprawling note collection and make new connections among ideas.

Deck organization

Cards are organized as sorted, unsorted and blank cards with a divider card of separate color.

Whether a card is sorted or not, every non-blank card must have an address written on it.

Unsorted card is like working memory. To improve focus only keep small number of unsorted cards.

Sometimes cards can be moved from sorted to unsorted to focus on them.

Once a deck is full or near full, split it with a address card in front of it. Always have only one deck with unlimited upper bound in addressing, so that new topics are added in a nonconflicting manner.

In every deck have some blank cards to capture ideas quickly

Digital solution

Biggest advantage or challenge is that the system should overcome data silos. In digital zettelkasten, each entry has unique topic name and gets linked automatically wiki style.

Questions to address:

This section is based on this article.2

Idea capture: Can I start a new note with a single click from any device? When it comes to capturing ideas in our busy world, speed counts.

Linking: Can I directly link notes together? Equally important, can I see backlinks—not just the notes I’m linking to, but also the notes that link back to this one?

Retrieval: Can I find a note easily? Especially when your Zettelkasten includes 500 or more notes, search matters. Does the tool you’re considering offer reliable full-text search? Boolean search? Saved searches? Text recognition within images?

Portability: Can I export the data and structure if I need to leave the system?

Other alternative tools considered are listed below

Other alternatives

Idea books

keeping idea books is another alternative to Zettelkasten . Here ideas are first postulated for self after the definition of terms involved. The critiques and questions are raised and resolved. If everything gets addressed, then a rewrite is done for external audience.

Workflowy

Outlining method, where ideas are written as bullet points or just headings. Here branching can be done easily or bullet points can be elaborated to paragraphs.

Here Nonlinear Ideas can lead to Branching Development. Concepts like children or siblings are used to branch off from one idea to another or to elaborate on something.

Adding ideas continuously improve our understanding and sometimes bring a totally new perspective or alters our original view.

Organizing ideas using computers is also quite easy with workflowy model. Without physical addressing limitations, ideas can be organized in a nice big tree like structure.

Biggest limitation occurred in developing depth in ideas. Workflowy was not friendly to write pages of details or critique on the huge collection of ideas.

Dynalist

A dynamic logging system with latex support.

Log file tracks or logs everything that happens or comes to mind.

A to do file with links to log file to develop ideas at a later time.

Temporary or engagement notes happens in a linear way and stored accordingly.

However important things or ideas or information gets into long term notes as zettel either after few hours or after 24hrs as recommended by Dan Sheffler.

Evolution of ideas

Jots - words or sentence

glosses expanded to paragraph with context

development of ideas - detailed Notes

refinement I.e elaborate notes with critique and support materials fit for publication

Bullet Journaling community

The Bullet Journaling community has thought and developed ways to take notes fast.

post in ycombinator

The Roam paradigm (which may be thought of as a digital version of the Zettelkasten method, but not the same) does significantly reduce the friction of writing thoughts down, and you can incrementally make your knowledge base richer by editing notes and refining them. I’ve only recently started to maintain my notes in a Roam-like format so I haven’t yet seen the benefit of bidirectional linking (I can easily find the relevant note by just doing a title search on my collection) but I can see how this could be useful as your collection grows.

When I found Roam Research I had two thoughts: 1) wow, this UI is rather polished and the UX is very good too and 2) it would be quite annoying if Roam Research disappeared after I had put in a lot of effort in my database and became familiar with the editor and UI/UX affordances. I know you can export the Roam database to a quite sensible JSON/Markdown format, but if I can’t self host the editor I will always be worried about this.

Basically this was a a deal breaker for me so I looked around for alternatives and found org-roam3. It’s an Emacs package that gives you a similar workflow for creating notes, inserting links to notes, viewing note backlinks and a few other things. It’s easier to get into the org-roam ecosystem if you already either use Emacs or vim, but I know a lot of people that have started using Emacs just to use org-roam.

There’s a quite high learning curve compared to Roam Research but you have the certainty that it won’t disappear from one day to the next :)

I don’t want to be too much of an Emacs/org-roam evangelist because it’s definitely not for everyone, but here are some of the workflows I do regularly:

  1. Have a ‘daily notes’ file where I initially write most kinds of notes; for example when I change the configuration of a system I’m working on, lecture notes, or pretty much anything else. I can insert inline images and attach any kind of file to each of these headings.

  2. Refile those daily notes into dedicated notes and link them to other relevant notes. For example, I would link the file containing my notes for a given lecture to the top-level note for that class, etc.

  3. Manage the research notes for my master’s thesis. I actually have a pretty cool workflow here:

  4. I find interesting papers or websites online and capture them into Zotero4 using the browser extension. This automatically creates a fully populated entry in my .bib file and downloads the relevant PDF or snapshot of the website into my local storage.

  5. I then use helm-bibtex5 in combination with org-roam-bibtex6 to create and easily access my notes on this particular bibliographical source. This note is just like any other org-roam note, so it can contain forward and backward links, etc.

  6. And finally, I use org-noter7 to read the PDF and make notes on each page or paragraph. These notes are simply plain text entries on the bibnote. This is pretty huge for me, because it gives me a very focused interface for reading and processing what is being said in the article while I make detailed notes about it (which helps recall and understanding). And also, finding exactly where in the source a given note came from is literally one keyboard shortcut away.

In conclusion, it’s a lot of up-front learning and tweaking to get your knowledge management system just right for you, but it may be worth it for some people. BTW, feel free to join the org-roam Slack - there are a lot of people there who are very willing to help.


© Prabu Anand K 2020-2026