On Logbooks
Paper vs. Files vs. PlatformsOn Logbooks
A sequel to my post on to-do lists.
I've spent a while now (nearly a year) using a digital logbook for work stuff. Most recently, this has been using Obsidian.
My requirements for a logbook that make a digital one the preference are as follows:
- A digital logbook is searchable; a physical one is not
- A digital logbook is readable; my handwriting is not (even to me)
- A digital logbook is shareable: I can ping my colleagues a link to a page (our company's git host renders the markdown and links so they don't even need to download the files)
One thing I can't get (without spending money) is a system that competes with pen-and-paper when it comes to diagrams. My solution for this is simple: I still have a physical logbook that I use almost exclusively for scribbling drawings and diagrams. Everything else goes into the digital one.
Version 1: Just the files, please
Version 1 of my digital logbook was very simple: a markdown file created per day from a template. Each day I write my to-do list and manage the tasks using some neovim plugins to provide useful keyboard shortcuts. Searching can be done with grep. Job done.
I had a brief go at writing a markdown parsing tool to allow contextual searching of files but as some other people will happily tell you, markdown's key strength is it's key weakness: it is unstructured and non-semantic. This makes it very versatile and well suited to natural language use, but extremely difficult to parse in a sensible and robust way. The closest you can get is a hierarchy of headings > paragraph text > lists (by indentation) but this very quickly falls apart if you, for instance, want to put a block-quote three levels into a list.
This was pretty good! But struggled when it came to embedding images and PDFs - a lot of my job involves reading (and sometimes annotating) PDFs (schematics, datasheets, application notes, etc.) so this was definitely missed.
I only used this for a couple of months before switching to Obsidian - which is what I realised I was essentially on a track to re-implementing (and who has that kind of time?).
Version 2: Obsidian
I started out with Obsidian using it in much the same way as my "manual" collection of files method, but the call of the wide selection of community plugins was too strong: I soon moved to using the seemingly ubiquitous Tasks plugin. For those not in the know, this plugin does two things:
- Provides some useful tools for interacting with markdown formatted checklist items
- Implements a powerful query feature that allows you to search, sort, and filter your tasks from throughout your vault.
It's really well written, fully featured, and (for my needs), equally distracting and useless. It essentially brings into Obsidian all the features of app-based to-do-list apps that I didn't like: forcing me into an unwanted role as custodian of an ever-growing, highly organised database of things I didn't need.
After realising this, I've changed things up and have arrived at a setup that is suspiciously close to where I came from before I first opened Obsidian: every day I have a new "daily note" (courtesy of the Periodic Notes and Auto Periodic Notes plugins); the Rollover Daily Todos then copies everything that isn't marked as complete from yesterday into today's note; the Templater plugin adds my "recurring" notes according to rules like day of the week, day of the month etc; finally, the Bujo Bullets plugin gives me nice bullet-journal-style bullet points so I can have only the necessary task "types" - to do, in progress, done, cancelled, scheduled for later, or migrated (carried over).
This works really well! If a task is no longer relevant, I simply cancel it; if it's still pending, it follows me from day to day; if it's relevant but not now, I can move stuff to a different section of the list at the bottom. To manage priorities, I only need to rearrange the order of the tasks. No micro-managing of dates or keeping track of different to-do lists in different files. Just one list that shows what I need to do today and what I need to do later. Things can be grouped in hierarchies, and related to each other through tags. Simple and neat.