Get Started with Obsidian as a Developer

Do you ever feel like you have the same ideas repeatedly but don’t know where to collect them to turn them into something real? Do you find yourself regularly trying to remember that article someone sent you or that tool you discovered? When you’re working on projects for work or creative projects, do you have a hard time gathering together all of the context and resources you need?

The notes application Obsidian has solved all of these problems and more for me. I use Obsidian to:

Obsidian window

What is Obsidian?

Obsidian is a personal knowledge management (known as PKM) app available for Mac, Windows, and Linux (mobile apps are in private beta right now). These apps have been cropping up a lot more frequently. You may have heard of Roam or Notion, but there are others like The Archive (which has been around a long time) and Craft. PKM is the next evolution in how we use computers to think and process information as humans. The magic of these apps lies in the backlink, a way to link together notes or sections of notes. In Obsidian, this is done with two square brackets: [[this is a backlink]].

This may not sound like a big deal, but it’s incredibly powerful. Let’s say you’re learning about the web framework Svelte. Not only could you link together notes on styling, state management, and routing in Svelte, you could link to more general notes on any of these topics. Your notes about state management in Svelte could link to notes about state management in Angular or React, state machines, or even just general computation notes. Course notes from a particular instructor could also link to each other.

Even better, apps like Obsidian also allow you to visualize those connections through graphs. Here’s how that Svelte example would look as a graph in Obsidian:

Svelte graph

Backlinks and visualization are extremely powerful as they spark more connections between ideas, cement our understanding of what we’re learning, and inspire content creation. Harnessing this power can honestly be life-changing, as bold of a claim as that sounds. Not only has my PKM system saved me a lot of time, it’s also enabled me to perform at a higher level, create deeper connections between ideas, and keep better track of progress on projects of all kinds.

You could take the same approach for projects or apps you’re working on. Suddenly you can compile together links and tools related to your side project while also linking to lessons you’ve learned from previous apps, notes from books you’ve read, or meeting notes. I draw a lot of inspiration from non-technical subjects like weight training, mindfulness, music, and strategy games, so the ability to link technical ideas to non-technical concepts is especially useful to me.

Why does this matter? Whenever we’re learning a new area, we’re slowly putting together puzzle pieces. At some point, a lightbulb will go on where we have a blend of knowledge and experience that shows us a clearer map. Your brain gets to that point by making connections between things, and often unrelated ideas will lead to those epiphanies (like those experiences where yard work or something a family member says helps you solve a problem). Apps like Obsidian and Roam let us accelerate that process by giving us a “second brain” that will store those connections when we’re not currently thinking about a subject. They also provide tools to make that note-making and linking process easier than just jotting things down in a text editor.

It’s a game-changer.

Why Obsidian?

So why do I use Obsidian and not something else? There are several reasons:

Possibly the biggest reason I love Obsidian though is that it feels like an IDE for thinking. Many apps are too slow and clunky in their UI. They add too much fluff or have too much of an opinion about how I store data. Why do we love VS Code so much? It gives us just enough support while getting out of our way. VS Code doesn’t prescribe how to architect apps. Obsidian doesn’t prescribe how to structure knowledge. At the same time, more “spartan” apps tend to go too far and neglect UX. Obsidian still has nice touches like custom keyboard shortcuts, panes you can move and split, dynamic link updating (when you change a file name the links update automatically), and even the CMD-P command palette VS Code has hardwired into my brain.

There’s a very good reason why I feel like Obsidian is an IDE for my brain. Check out this section of Obsidian’s about page:

Although we call it a personal knowledge base or your ‘second brain’, we also like to think of it as an IDE for your notes. You can think of an IDE as a powerful frontend that tries to understand your code, such as where are functions and variables stored, what are their types, and by doing so make it super easy to navigate code and get suggestions as you type. In this sense, with most of the current note-taking apps, working with notes feels like writing code without syntax highlighting, code autocomplete or Git integration. All the things that programmers have been taken for granted for decades. That’s pretty sad, don’t you think? Today’s knowledge workers are facing new challenges all the time, and they deserve better tools.

This makes perfect sense when you think about it, because Obsidian is made by Shida Li and Erica Xu, two software engineering grads from the University of Waterloo. I love all of the developer-friendly touches Shida and Erica put into Obsidian, and you can see how quickly they are working by periodically checking out the development roadmap Trello board!

Wrangling all of my notes is a problem I’ve been trying to solve for years. I’ve always been a journaler and note-taker. I’ve written in text documents, Google Docs, Bear, Ulysses, Notepad++, and who knows where else. Writing apps like Bear and Ulysses don’t have the linking structure I need, but text documents don’t either. Google Docs can kinda sorta link together but there’s no way to see how they all tie together.

My introduction to knowledge management was through Joel Hooks’ recommendation of Tiago Forte, which led me to discover Notion. While I still use Notion for running this newsletter and tracking projects (a la Kanban board), I found it was way too slow to use for knowledge management. Everything you type into Notion gets processed because of the way its command system works (for example, typing @ or / triggers command menus to pop up); it’s always trying to guess what you’re trying to do. This adds a lot of overhead to writing time. I’ve also experienced several outages with Notion, which inspires a lot of fear that my entire knowledge base will suddenly be unavailable with no offline mode. Notion promises things are going to get better, but I just can’t keep waiting for this mission critical stuff.

I will caveat that I haven’t tried Roam. A huge reason for this is that, last I checked, Roam doesn’t even have two factor authentication and has no plans for end-to-end encryption. That’s a dealbreaker for me. It’s not like I’m doing anything top secret, but my notes are an evolving and private reflection of my thoughts. I don’t really want those on the cloud behind minimal security.

Obsidian Pricing

Obsidian has a simple pricing structure. Believe it or not, Obsidian is free for personal use. If you’d like to support development, you can purchase a Catalyst license. Catalyst is a one-time payment with a few different tiers. It gets you access to insider builds and a dev channel in the Discord. I also pay for a business use license since it’s become so indispensible to my creative process for my newsletter, books, and videos.

There are also two add-ons you can purchase:

Obsidian Themes

Just like VS Code, Obsidian lets you customize the look and feel of the app with themes. Here are a few of the most popular:

Obsidian Plugins

Obsidian has a fantastic plugin architecture that divides into core plugins and third-party plugins.

Core plugins

Core features of the app like backlinks and the graph view are actually just plugins that can be enabled or disabled. Here are some core plugins you might want to check out that are off by default:

Combining plugins like daily notes and templates with custom keyboard shortcuts can really take your knowledge management game to the next level.

Third-Party Plugins

There’s also an entire ecosystem of third-party plugins. To enable third-party plugins, you first need to disable Safe Mode in settings. After disabling Safe Mode, you can find third-party plugins in Settings -> Third-party plugin -> Community plugins -> Browse. You can browse plugins by popularity, search for specific plugins, and install them with a click.

Remember: treat these plugins the same way you treat npm packages (vet using popularity and be safe about source code!).

Here are some of my favorite plugins from the community:

The coolest part is that, since Obsidian is just an Electron app, so you could write your own plugins in JavaScript! To get started, check out the sample plugin and read through the Obsidian API.

Further Down the Rabbit Hole: Using Other Tools with Obsidian

One thing I love about Obsidian is that, because the vault is just a bunch of markdown files, many other tools work well with it. For example:

How I’m Using Obsidian

I use PKM broadly and Obsidian specifically for a few different purposes:

I’ve found Obsidian to be the perfect place for “medium to long term” notes and ideas. I still use Drafts as my “idea inbox” because it’s so fast and so low friction that I can quickly write or dictate something and then immediately get back to work. For example, I often have moments of clarity about personal growth while I’m working out or doing dishes, activities that let my brain decompress. I can use my watch to dictate something into Drafts, then the next day move it into the appropriate note in Obsidian (or trash it if it’s not that good of an idea). What’s awesome about this is that, instead of constantly having the same epiphanies, I can capture those moments and then add them to a growing body of work. It’s the epitome of “slow burn” instead of “heavy lift.”

This is a problem I’ve been trying to solve for years. I’ve always been a journaler and note-taker. I’ve written in text documents, Google Docs, Bear, Ulysses, Notepad++, and who knows where else. Writing apps like Bear and Ulysses don’t have the linking structure I need, but text documents don’t either. Google Docs can kinda sorta link together but there’s no way to see how they all tie together.

Mistakes I’ve Made with Obsidian

I know I’ve got you chomping at the bit to try Obsidian, but I want to tell you about two critical mistakes I made when I was getting started with PKM and Obsidian that lost me a lot of time.

The first mistake I made initially was dumping too much information into Obsidian — attempting to archive every note, article, highlight, or link I could find. I was like The Collector from Guardians of the Galaxy. This added way too much junk and noise to my Vault. My advice would be: don’t treat Obsidian like you’d treat Pocket or Instapaper. Obsidian is most useful when it’s a reflection of what’s important to you and your own original thoughts, feelings, and notes on what your learning and reading. Think of your Obsidian vault as self-documentation, building a conversation partner that you can think through problems with and that helps you remember things.

The second mistake I made was adding too much structure too quickly. I migrated a bunch of information from Notion and other places and quickly added a bunch of folders and structure. This was a mistake. In learning from others and gaining experience, I reverted to a simpler approach: letting the backlinks and graph cause the structure to emerge organically. This means being okay for a while with a bunch of notes in a list. The point of this process isn’t to categorize a bunch of files, it’s to use backlinks and the quick launcher (cmd-O) to organically navigate the way your brain connects ideas. Eventually some structure did emerge, but it was specific to the way I use Obsidian. Allow yourself to build your own system over time.

More Obsidian Resources

I’ll leave you with a few more resources to help you in your Obsidian journey:

I hope this was helpful and that you enjoy using Obsidian as much as I do!

Project list gathering dust? 👀

Drop me a line below so I can send you the Tiny Experiments framework and worksheet. You'll also join over 2100 other devs and dev advocates on the Developer Microskills newsletter.