Building a Second Brain

- 12 mins

The concept of a “second brain” to store, visualize, and synthesize all of the information in my mind has always been really appealing to me. Physical journaling is a nice option, especially since hand-writing has been proven to help retention 1, but I’m slow at handwriting and lose things easily. I used Evernote since 2014 for everything from article clippings to class notes. But after a few years, it got clunky—new features were added without being particularly useful, and development stalled. The once-unicorn company started going under.

Last year, I was on the hunt for a better note-taking app. After trying out a variety of apps (Bear, iA, etc.), I settled on Ulysses. I really enjoyed it—it felt lightweight, fast, and minimalistic while still having some nifty features. However, while I loved writing in Markdown, there wasn’t a quick way to view the compilation on the side. Adding images and other multimedia got ugly. Most importantly, the hierarchical structure of Ulysses didn’t reflect how my brain was organized.

What started as a search for the best note-taking app led to many hours of reading various blog posts and Reddit threads, watching videos, and ultimately committing to Obsidian. Since then, I’ve thought a lot about how my own ideas form and how my knowledge is organized, and what my ideal system would look like.

Here is what I’ve learned and some notes on my current system.

The age of information overload

With the advent of the internet, we have been bombarded with information2. Each day, I consume a lot of content—papers, videos, podcasts, books, and random internet rabbit holes. I talk to a variety of people and gain a lot of insight, advice, and perspective. As a student, I want a system to store all of my notes, especially in math, physics, and computer science.

Especially in quarantine, I felt particularly overwhelmed. I had lots of disparate ideas and thoughts swirling in my mind with no real outlet. I needed to return to first-principles thinking. And I wanted one centralized location to store everything I was learning and synthesizing.

A solution: The Zettelkasten System

This note-taking technique was pioneered by Niklas Luhmann, a 20th-century German sociologist who published over 40 books and 600 papers over his lifetime.

He made a “Zettelkasten” (“Zettel”—slip of paper, “Kasten”—box). The “slip box” contained 90,000 index cards for his research 3. There a ton of good resources on the elaborate method [4, 5, 6] that cover the why and how, but the main idea is that they allow you to boil concepts and ideas to their atomic form and rearrange to form connections between these atoms.

My criteria for a great note-taking system

My ideal note-taking system had the following criteria:

Backlinking. Backlinking capability is integral to the Zettelkasten method. This means that each idea is a “node” that is bi-directionally connected to other nodes, which imitates how the brain and World Wide Web is structured. It also allows for visualization of ideas with a knowledge graph that can be pruned and used to draw connections between discrete concepts.

Future-proofing and privacy. Nothing lasts forever, of course, but minimalist text files are more likely to stand the test of time than random JSON or HTML formats. Hot apps come and go every few years, but I wanted a system that I could keep for decades, not just lasting the hype cycle of the next best app.

Markdown-based local files makes porting between note-taking systems super simple. It allows you to own your data and back up in any form you like (Github, Dropbox, Google Drive, etc.). It’s also extremely extensive—you can use Latex, create tables, and add any multi-media possible. There are a multitude of Markdown editors and systems you can choose from, and it is easy to import and export to various formats. It also allows for greater privacy; local files are less susceptible to cloud-based hacks.

Access. I strongly prefer desktop-based over web-based software as a service (SaaS). With web-based apps, you often lose privacy and control of data, suffer from speed and software bloating, and lose access without internet connectivity.

Community. Having a strong and helpful developer community is paramount. Especially for newer apps, I wanted quick and frequent updates. Additionally, a large or growing user base who care about the product can help find bugs, create customizable systems, and ensure long-term development.

Cost. Paying money is fine if it adds a lot of utility and value to my life, but I’d prefer a free service, especially for long-term use.

Some contenders

I strongly considered Roam Research. It has garnered a lot of hype lately for its bidirectional linking system, and is one of the first big apps after The Brain with the backlinking capabilities. However, being web-based and the lack of data security made me choose against it.

There is a wide variety of alternatives that support backlinks and graph view (huge list here), each with its pros and cons. I also considered Foam (open-source, VS-code based), and RemNote (more of a study tool with spaced-repetition), and Athens Research (open-source). Athens holds a lot of promise, and I’m excited to try it out once it’s released.

Notion has been pretty popular lately, but I found it too filled with features (color-coding, covers, etc.) that I didn’t want or need. It also didn’t meet many of the backlinking or future-proofing capabilities I listed above. I think it’s great for collaboration, though, and it looks like it might be around for a while.

Why I chose Obsidian

At its core, Obsidian is a desktop application that formats your local Markdown files and draws a graph relating files and header nodes. It is free for non-commerical use and avaliable offline. There is a great community on Discord, and the founders have experience creating Dynalist.

I believe Obsidian has a bright future. Even though they are still in beta, the app is stable and I haven’t run into any debilitating bugs. Their transparency, founder’s philosophies, and road map speaks a lot to their values and goals. Their plug-in feature allows them to focus on their core capabilities while allowing developers to create useful opt-in tools. Overall, it functions like an open-source, content-first application that caters well to the developer community.

Since my blog is also written in Markdown, it makes writing and publishing posts really simple. Eventually, I’d like to make something that would allow me to publish straight from Obsidian or Typora—right now I have to copy my posts into my Github repository. This isn’t a huge hindrence since the Markdown formatting is the same, and I don’t publish frequently.

Cons of Obsidian

The big difference between Obsidian and Roam Research is that Obsidian is “header-first” whereas Roam is “block-first” (more info here). To me, that’s not that big of a deal, but I’m sure that could sway some users.

Another huge drawback for me is that Obsidian is not open-source. That’s why I’m excited for Athens and other teams that will be releasing their applications this year.

Thankfully, most of the other complaints I have with Obsidian (no open API, WYSWYG/M, or mobile app) are what they are currently working on. Since everything lives locally in Markdown files, there are workarounds.


Example of a graph view in Obsidian

My current notes + journal + idea setup

Here are the tools I use for knowledge storage and idea generation:

Other tools I use:

This might be a little obsessive and extensive, but it’s what works for me!


Typora: a beautiful “What You See is What You Mean” Markdown editor

How I organize my Obsidian files

I use a combination of systems: the Zettelkasten method to take and synthesize my notes along with a modified PARA (Projects, Actions, Resources, and Archive) system to put my notes into a hierarchical structure. Although it might seem like sorting notes into folders defeats the purpose of the Zettelkasten method, I found that having a shallow hierarchical structure helps me keep track of my notes. I also like how the PARA system gears towards taking action.

organization The PARA (Projects, Actions, Resources, and Archive) System in Obsidian

The future of my note-taking system

I’m excited to see how the future of the “next-generation note-taking system” plays out. There are a ton of options out there—many good, none perfect. At the end of the day, no matter how cool these tools are, it’s about how useful they are in your daily life. To me, the fun part is that my system never stops evolving to fit my needs.

Some food for thought

I believe we’re on the cusp of a revolution—note-taking, idea-generation, and fusing the brain’s thoughts while leveraging the computer’s storage, memory, and analyses capacities are only at the infant stages. We’re still using fairly rudimentary tools that we’ve used for centuries and adopting the same techniques in a digital form without leveraging its power. How can we get our digital information and computers to work for us in a secure and flawless way? Why is our working memory so bad—what if 80-year-olds can seemlessly retrieve what they learned and wrote as an 10-year-old? Why is it that babies are born with very little knowledge, and that our rich library of thoughts, ideas, and feelings are lost when we die? Why can’t we, as a society, create a knowledge graph of everything we have ever known? (I guess that’s Google or Wikipedia, but I see those as a step removed from the personal connection and human experience.) What unique and interesting things can we come up with then? At some point, the answers to these questions may border on a Black Mirror episode, and I’m sure there’s a lot to be wary of. But with the rise of some hyped topics of tech—big data, artificial intelligence, brain-computer interfaces—there is much to be explored and optimistic about.

Some resources that helped me get started with Obsidian

comments powered by Disqus
rss rss facebook twitter github gitlab youtube mail spotify lastfm instagram linkedin google google-plus pinterest medium vimeo stackoverflow reddit quora quora