Don't Overthink Your PKM

Overview

It’s important for all knowledge workers to have a Personal Knowledge Management System (PKM). That doesn’t mean you need a fancy tool, or a complex process. Sometimes, the “stupid simple” solution is the best one.

To that end, I wanted to talk through my wife’s system. It’s an important example because her choice to specifically not use any of the fancy purpose built tools has resulted in a better solution for her needs.

For context: she’s a Developer Educator. This is a fancy way of saying she documents APIs and writes code. Her job is to help other people understand how to use various libraries and tools.

Her Process

  1. When she needs to look up a piece of information twice, she records it.

  2. When she finds herself repeatedly performing the same task, she automates it.

    There’s no hard number of times here, and the “automation” can be trivially small.

Her PKM

There are two primary kinds of information in her PKM:

  1. documentation on how to do something
  2. code snippets that she’ll want to reuse

Her Needs

  1. Easy access to the information without having to switch contexts / apps. She is working in VS Code when she needs to access this information.
  2. The code snippets need to be in a form and location that makes it easy to bring into her apps.
  3. She needs to be able to share these snippets & instructions with the people she mentors, and people new to the project.

That’s it.

VS Code…

  • has reasonably good search functionality
  • lets you easily browse directories
  • has good Markdown syntax highlighting

So, all of the “personal knowledge” she needs to “manage” is stored in a collection of Markdown files in a hierarchy of folders that makes sense to her 🧠.

She checks those files into a git repo, which she regularly pushes up to GitHub. Having the files in GitHub means she can easily link her coworkers to a relevant page whenever needed. It also lets her link to a specific line or paragraph within a document, and gives her another backup location.

It’s a nice, simple, and elegant solution.

Summary

There is a plethora of apps to choose from that do a good job of managing collections of Markdown documents. There are even some specifically for developers, but…

  • The content would no longer be available to her within VS Code.
  • She’s satisfied with the search and browse functionality it provides.
  • She has no complaints about the UI she has to use to find the information she needs.
  • They’d hamper her ability to share.

Her simple system is perfect for her 🧠, and her current needs. It also includes a simple process for deciding what to capture, and what to take further action on.

People get caught up in searching for “the perfect tool” or “a better tool”. Developers sometimes get sucked into the idea of writing a better tool… Sometimes the simple solution really is the best one.

Her solution is not the right solution for my brain or my needs. But that doesn’t matter. What matters is that, we each figure out what’s right for our brains. Start simple, and don’t chase shiny objects.