In this post I will go through some of the thoughts I have about keeping and organizing knowledge in my Zettelkasten.
If you do not know what a Zettelkasten is, it is a way to store knowledge; a repository of interconnected notes, with each note representing one piece of information. This should be enough information to allow you to benefit from this post, but for more you may want to check out my previous article on the topic, or Christian and Sascha’s website.
As new notes are added to an archive, the inherent value of the archive sharply increases. At the same time, however, its organization seems to become more challenging and time-consuming. Following a clear set of organizational and structural rules will help you run your Zettelkasten with less friction, allowing you to focus not on keeping the tools working, but on working with the tools.
Before I get started, please keep in mind that a Zettelkasten is, by nature, personal. As such, the methods explained here are only some of the possible ways to maintain it. I suggest adopting what you feel would work best in your case, and rejecting what wouldn’t. The Zettelkasten is, essentially, composed of two things: the Zettels and the links in between them. I’ll give my thoughts about both.
I believe order in a Zettelkasten starts at the very bottom of the chain, at the unit level. As such, let’s begin with the Zettel. The Zettel can be split up into three main components: content, structure, and metadata.
Make Zettels as small and succinct as possible, but not to the degree that it would hamper understanding.
What should a Zettel represent and contain? A good rule of thumb is that both the idea represented by, and the text within the Zettel should be as concise and simple as possible.
Ideally, Zettels should only represent a single idea. If, when you start writing a Zettel, you realize it could be split into a number of smaller ones, do so. You will be able to make links later. Why? Because the strength of this system lies in the (often serendipitous) links it helps to produce between ideas. The clearer and more distinct the ideas are, the higher the occurrence and quality of the links between them.
As for the text itself, be as succinct as possible. That helps in clearness of thought and speed of browsing. The mere act of transposing a concise synthesis of an idea to a Zettel strongly helps you to learn and assimilate it. This does not mean, however, that the content of the Zettel should be cryptic, far from it. Imagine you are writing the Zettel for another person who knows little to nothing about the Zettel’s context — because this person will be you, later in time, encountering the Zettel you are writing now. Picking it up, you should be able to recall the context it was written in, and fully understand the idea it represents, while at the same time being as short as possible.
As a Zettelkasten is a long term endeavour, write for the long term. It is with this mindset that you should compose your Zettels.
Practical tip. One thing that helped me write better Zettels was by borrowing one idea from Wikipedia. Have you ever noticed that Wikipedia articles always start with one sentence which repeats the title of the article and explains, in that one sentence only, what the item described by the article is? It is only after that point that background information, context, and examples are provided to increase understanding. I try to do the same in my Zettels.
Have four elements in your Zettels: metadata, content, links, and references.
While content is king, good structure makes sure the content is well-supported. In my case, the overall structure of Zettels is the same for all of them. Here’s mine for reference.
There’s four main segments in my Zettels: preamble, content, links, and references.
The preamble contains any sort of metadata you’d like to assign your Zettel (more on metadata in the next section.) I choose to only insert tags, as the Zettel’s title and unique ID are already in the filename.
In the links section, I insert links to related Zettels. As mentioned earlier, the strength is in the links, so make sure this section is never empty.
In the references section, I insert full bibliographical information of where I have learned the idea represented in the Zettel, or generally, of books which talk about the idea. Here I also insert external links. This is useful in case you ever find yourself citing the concept in the Zettel in an official fashion, or if you just want to re-read its source.
For a Zettel to be useful, it has to be able to be referred to and found. This is what metadata is for. I give all of my Zettels the same filename of title plus unique ID.
The unique ID, as pioneered by Christian, is a number made out of the date and time at which the Zettel is created. It is handy while creating Zettels as you can think of them as sort of “permalinks” which survive even as you rename and change your Zettels.
This is a Zettelkasten without any links between Zettels:
I won’t go as far as to say that this system is useless, because it is a repository of information. However in this state, it is no more functional (if less) than a plain old notebook. This is not what this system is for.
This is a Zettelkasten with interlinking, that is, Zettels contain links to other Zettels:
Better. Now we can access related content when visiting a single Zettel, producing an invaluable web of information.
Interlinking, for me, is done by simply wrapping the filename of the Zettel I am referencing to between [[double brackets.]] Then, when I want to access the content I linked to, I copy-paste its ID in the search box. This is how it works in practice:
Some software, such as The Archive and nvALT, allow you to more easily create and navigate interlinked notes, kind of like this:
Finding information “from scratch” is still difficult however, as finding a point of entry in this situation is a suboptimal process. Say you’re looking for Zettels that are about sociology. How would you go and find them in this system? You could run a text search for “sociology,” but not all Zettels about sociology necessary contain the word “sociology.” This makes it so that there might be related Zettels remaining outside of the scope of the search term.
This is a Zettelkasten with interlinking and tags:
We now have clear sections, separated by tags. If I were to search for, say, “#sociology,” I would immediately find a curated list of all sociology-related Zettels. And this is all without giving up the benefits of interlinking, as tags are on a completely separate layer. Of course, the same point-of-entry problem arises with tags, too, since when you have too many tags, you might not know what tag to search for. While you can see how this has the potential to turn into an infinitely recurring problem, for me at least the solution lies in having well defined criteria for what a tag can be.
When thinking of a tag (or tags) to add to a Zettel, I try to think of this sentence in my head: “This note is about _____.” What’s in the blank ends up being my tag. The reason why this system works is because while searching for a particular group of notes, I mentally tell myself: “I am looking for notes about _____.” While this method is far from scientific, it works, which is good enough for me.
Do keep in mind that it’s perfectly fine for a Zettel to have multiple tags.
7 thoughts on “Some Thoughts on How to Keep a Zettelkasten”
Hi great article, i have a quick question ( i may have missed some reference to it if you can point me to something it will be useful as well). Are the links directed or undirected? When you add a link from note A to note B should you automatically add a link from note B to note A? Or is this done depending on the actual relationship?
Hi Micheal! I didn’t talk about it in the article, so I should definitely add that. Thank you.
Usually I only add a backlink if I think it’s going to be useful in the Zettel I linked to, which is admittely most of the time. I add it manually in the “links” section at the bottom of the Zettel I linked to. There is, however, a script which apparently is able to inserts backlinks for you automatically. This is a write-up of that script. I haven’t tried it myself so I can’t really say anything more. I hope this was useful to you.
Currently attempting to start my own Zettelkasten, and this was helpful. Thanks for writing it up!
I will probably go with Markdown + Typora (the nicest markdown editor for windows I could find – also supports Latex, which is important for me) for a first start and adapt your zettel template.
Hi Eike, thank you for your thoughtful comment! I agree that Typora looks great, and it’s one of the few existing free multiplatform Markdown editors. The world of Windows has been somewhat neglected in that regard, but it’s slowly catching up. Do keep me updated on your Zettelkasten. 🙂
I would suggest checking out Zettlr, it is also a great md editor for Windows, Mac and Linux distros and it is also preconfigured to work as a Zettelkasten