A knowledge base (KB) is a database of knowledge. It is a place to aggregate knowledge about a specific topic. They are commonly used in professional contexts, often for both internal and external facing FAQs. In that context, they're obviously very helpful. They make information about a specific topic easily searchable by the people you work with. They do this by leveraging structured data, which is easier to search and manipulate. And it's a perfect way to organize your personal notes as well.

I started using Notion to organize my personal notes about a year ago, and it has dramatically improved my ability to organize and find things. It uses a flexible block system that allows content blocks to be embedded inside of each other endlessly. All blocks (which includes pages, text and tables) are blocks and this makes the system very flexible. We'll come back to Notion in a bit, but first let's talk about searching the internet.

The Bad Way

Have you ever found yourself with 100 tabs open in your browser? That's how you know you have a problem! Why can't you close them? What are you so afraid of? You're probably afraid that some crucial piece of information is living in one of them and that you'll be unable to find it later. But once you reach 100 tabs, let's be honest, you've already lost it.

This is the natural consequence of having endless information at our fingertips. If you're like me, you probably spend a lot of time searching the internet for information—I generally do research on some topic for hours every day. But what do you do with that information once you find it? How do you save the webpage and take notes about what you're reading? If you're doing extensive research, how do you look up information that is relevant later? It's only in the past few years that I've started to formalize how I go about organizing this kind of information.

I used to use some terrible combination of bookmarks and text notes to record things. It worked to a certain extent for short term projects, but it starts to fall apart quickly at scale. And it becomes obvious when you go back to find something and spend over 10 minutes looking for it. I've tried a few methods to make this easier over the years. I used to use Evernote to take notes, but it was very slow and didn't provide much advantage over plain text notes aside from a very elementary folder structure to organizing them. At one point, I started using plain text markdown notes with the Vim text editor. Editing in Vim is powerful, but just like Evernote, it's not a great experience for organizing large amounts of information. Even with consistent naming of files based on date and content, it didn't pan out long term. Using command line tools to search my files was also just plain clunky, and I missed the ease of use that Evernote offered. In addition to those text editors, I was still using bookmarks in my browser to save web pages. So now I had links and text in my notes, and links saved as bookmarks in my browser, and no meaningful organizational system to find anything.

I really don't like bookmarks. I've found that they tend to accumulate towards meaninglessness. I have to keep things very lean in order to make them searchable, and even then, there's no context about why that link was relevant to me at the time. It's just a link, nothing else. So I didn't know it at the time, but what I needed was a combination of bookmarks and plain text notes that could be combined into a structured, searchable format. We've had such structured formats for a long time. They're called databases. But standard databases are not very user friendly and require that you know how your data should be organized ahead of time, when what we want is a format that can evolve with us as we change. I think this realization is platform agnostic, but I discovered it while using Notion, and I think this is where Notion shines.

The Good Way

When I take notes, I tend to remember things more clearly. I guess that's because I'm forced to distill what I'm reading into something that is personalized for me; something that matches my communication style and is easy for me to later understand. I don't know many people who regularly take notes from the content they read online, but I think it's a good practice especially when doing more focused research.

Additionally, structured information is just plain easier to find later. Notes are, I guess, the most basic form of structured data. But they lack the organizational advantages of databases. Notion combines notes and databases into an elegant form that makes it well suited to all kinds of information. Notion databases are essentially fancy spreadsheets that do much more. Now, whenever I run across a piece of information that I may need to reference in the future, I add an entry to a KB in Notion, tag it with the relevant tags, and jot down the most important notes. There are three features I've found especially useful when creating personal KBs:

  1. Dynamic properties
  2. Dynamic database views
  3. Embedded pages

My examples below are related to coding, but this technique can be used for any kind of information (e.g. gardening, marketing, medicine, finance); anything that requires research over time and you may want to reference later.

Dynamic Properties

Notion allows us to create an arbitrary number of properties on a table. The most important I've found are tags (which is a multi-select) and URL. These 2 properties alone have you ready to create powerful and useful KBs in seconds. Here's an example of a KB I'm building now:

I'm in the early stages of learning Golang right now, and am coming across resources all the time that I may need to look at again. As you can see above, each entry includes a url and a set of tags. The tags are those colored bullets with things like sql, http, or authentication. Both urls and tags are searchable and filterable, so if I need to find an entry about Postgres, for instance, I can search on that tag. If I'm additionally looking for a stackoverflow.com post, I can add that too. Once I find the entry I'm looking for, I can open it and see if I made any notes about the article. The little paper icon to the left of each entry name indicates that the entry contains content. More on this below.

Dynamic Database Views

As you can see above, my KB doesn't look clunky like a database. Instead, it looks like a gallery. That's because I've chosen the gallery view for this database. This is a personal choice, but I really enjoy how easy it is to scan this type of view for information. You can also customize how each card shows up, whether that's with a cover image or a preview of the content inside.

Embedded Pages

These are the free form notes I mentioned earlier. Because Notion uses a flexible block system, each entry in a database also has a page component. That means you can easily click on any of the above entries and jot down a few freeform notes about the topic. Here's an example of what that might look like:

I like to save anything that might prevent me from having to go back to the original article, just the most important things. That might be images or code samples that I need to reference later. You also get the power of markdown with great syntax highlighting in these pages. The syntax highlighting above is specific to Golang which is icing on the cake.

Conclusion

We all aggregate information from so many different sources that it starts to feel like a ball of twine at some point. Taking notes when reading online makes it personalized and easier to remember. Creating a semi-structured format to organize that information makes it easier to find later. Even though services like Medium, Stack Overflow, and our browser all have implemented a way to bookmark content, having those bookmarks in a variety of places makes them all but useless. We need a central source of information. That's why it's helpful to have a central system of KBs to organizing information and glue everything together.

It's not exaggeration to say that Notion has changed my organizational life in a big way. I didn't anticipate how extensively it would change how I work. It's so easy to create a new one-off KB, that you can do it whenever you're searching the internet for something under a single topic. I now have knowledge bases for a variety of things from programming to preparing for trips or financial resources. It's so much more powerful than creating a folder of bookmarks for each topic because it's organized by tag to search later and you've written down the most important information.

If you're like me and often find yourself opening so many tabs that you can no longer tell what each one is, then this technique is going to work wonders for you. You can close tabs with the confidence that you've saved the most important ones, taken notes about the most important parts, and have organized them so that you can find them later.