The lockdown continues. It’s pretty horrible to be thinking of all the death and misery going on all around (the U.K. has just reached 10,000 deaths from COVID-19… ten fucking thousand!), so this past week I’ve been thinking a lot about organisation of knowledge. This is part of my ongoing rethinking of processes (for now, specific to computing) centered around the imperative for data ownership.
In addition to owning the data, it’s also very important that data remains accessible and usable in the years and decades ahead. Just like huge amounts of data have been lost to optical disc rot, just as much, if not more, has been lost over the course of my computing life to DRM1 and proprietary formats.
One particular area in which this has hurt the most has been notekeeping, or accumulation of personal knowledge. While this is a life-long endeavour by definition, bits and pieces of this have been saved in various note-taking programs, task managers, and so on. I’ve had notes in Dropbox, Notational Velocity, Evernote, Things, Apple Notes, Google Keep, Ulysses, Notion, and I’m probably forgetting many others. The one thing that these solutions all have in common is that they don’t allow easy export from one system to the next, and, if the company building the particular app you’re using either goes bust or changes the rules of the game2, well, you’re screwed.
The tool of the day for knowledge management is a platform called Roam Research, and it is impressive. It’s a sort of mix between a note taking system, a personal wiki, and the Zettelkasten method, and allows to discover organic connections between pieces of knowledge. I was very tempted to give it a try.
A few months back, I’ve rediscovered3 the GNU Emacs text editor thanks to my friend Alastair (in addition to many things: the man is also pretty much responsible for me switching to Linux!), and with it, Org mode.
Emacs has been around for longer than I have been alive, and has a gigantic set of packages built around it, dealing with pretty much anything that’s even remotely related to editing text. Org is a plain text file format, in a way similar to Markdown, and a suite of tools (mostly for Emacs) built around that format. One thing that Org is used for is tracking todos, but, combined with other tools built into Emacs, as well as its plain text characteristics, it’s the perfect foundation for a personal knowledge system that will last for the decades to come.
My free time this week has mostly been dedicated to trying to organise a personal knowledge system built around Org mode. One thing that has been hugely inspirtional has been Org Roam, a Roam clone for Org mode developed by Singaporean engineer Jethro Kuan. In a series of blog posts (1, 2, 3) he’s described how he manages his own knowledge base and tasks in Org, and the problems that needed to be solved that led to the creation of Org Roam. I’ve been studying Kuan’s methodology (and his Emacs config)), and will be very certainly building on his work for my own knowledge management system.
I’ve been looking for a way to capture learning and make it available for reference for a long time, and this seems like it could be a great system. As I’m getting older, I hope this will help me keep learning, and make the accumulated knowledge useful.
See you next week, stay safe out there!
Remember when songs bought from iTunes came with embedded DRM? Yeah, I bought a bunch of those. ↩
Notational Velocity is somewhat of an exception in there: it’s open source and relies on plain text files. Mac only, though. ↩
We were forced to use Emacs at uni while learning C, but I was not an enthusiastic user at that time and missed out on a lot of cool things. ↩