andrewconl.in is tinkering
blog til projects meta feed [archive]

~ / blog / Taking notes 2025-11-06 | 3 minutes

I thought I would do a short post on how and why I write so much down, at work and at home.

I’ve always been someone who takes notes. I love a good to-do list, and I figured out a while ago that I am a exponentially less stressed when I can offload all of my thoughts and ideas into some form of “second brain”. I have a very small notebook, and most days I write down all the chores and errands I have into a little list. I also have my journal for longer form thoughts, plans, and lists (and poems!).

When I first started working, I bought a moderately nice notebook (with graph paper – very important for checkbox lists!) to collect all my thoughts. This helps me organise my work, and with prioritising what needs done and when. It really is invaluable for me; I have the sort of brain that finds it difficult to drop something that is stressing me out (thanks, Dad!). If I don’t have a release valve of some sort, the thoughts just swirl and swirl, making me more and more unpleasant to be around. Being able to externalise the thought train really is the only way to turn my brain off from work.

(If you want to do this yourself, dear reader, it is definitely worth it to pay for a decent notebook and especially some decent pens. You will thank your past self!)

However, there was a problem. Because I use a computer for all of my work, I found myself translating things from the screen to the physical notebook. This works fine for short things: a filename, a function signature, a command. But what about URLs? Longer code snippets? Stack traces? I had no consistent place to put these, and I wrote out exactly one URL by hand before I gave up and starting looking for another solution.

There is a lot of note taking software out there. For my part, I tried OneNote (far too clunky and mouse oriented), and Obsidian (nice interface and plugin ecosystem, but still very much a large Electron app) before eventually settling on straight neovim (as usual). For a while, I was opening empty buffers in whatever project directory I was in, and dumping things to a text file. However, this was messy and inconsistent and, despite my best efforts, I am not always directly using neovim for my work. So, I came up with a better solution.

today() {
    dir='/home/andrew/notes/'
    subdir=$(date '+%y/%m/%d')
    fullpath="${dir}${subdir}.md"
    nvim "${fullpath}"
}

This is a simple bash script which parses the date, and opens a daily markdown note in a date directory structure. I went for this solution as I already had an Obsidian vault of markdown files in this structure, and had been taking daily notes for a while. However, unlike Obsidian, it is almost instantaneous to start up. Every morning when I get into work, the first thing I do is type today at the command prompt. It’s open all day, always within reach for anything that needs saved. It’s amazing what a convenience it is to have a dedicated place to store all of those snippets and links and quotes and marginalia. The thing I love most is how text files link in with other tools. It is such a joy to go from using the built in search in OneNote to running rg functionName ~/notes and instantly getting all the information I was looking for.

I found that I still wanted a way to open my daily note from inside neovim. This is accomplished with this small lua function to find and open the note. I also wrote a convenience function to insert the time of day as a markdown header form a shortcut, as I like to sort the notes by time as well. There is a minor paper cut that I’d like to fix at some point, but the frequency is currently exactly once a month, so I never bother to fix it: the bash command does not create the directories, so every time we hit a new month I have to run :w ++p when I write the file to have neovim handle the missing directories.

For a while, I was flying high in my buffers, and stopped taking my notebook to work with me. But recently, I’ve reconciled my two methods. The neovim method works great for all things computer, but not so well for longer form thoughts and rambles. I also love sketching whenever I am doing UI stuff, to get an easy sense of how things are going to look, and nothing beats handwritten for when you need to remember something. And there is one thing that no note taking software will ever beat my notebook at: time away from the screen. We all need it, now more than ever.



Issues or comments? Email me!

Articles from blogs I follow around the net

Switching from GPG to age

It’s been several years since I went through all the trouble of setting up my own GPG keys and securing them in YubiKeys following drduh’s guide. With that approach, you generate one key securely offline and store it on multiple YubiKeys, along with a back…

via Luke Hsiao's blog November 4, 2025

Computer Says No: Error Reporting for LTL

Quickstrom is a property-based testing tool for web applications, using QuickLTL for specifying the intended behavior. QuickLTL is a linear temporal logic (LTL) over finite traces, especially suited for testing. As with many other logic systems, when a formu…

via Oskar Wickström November 1, 2025

Cosytober 2025

Cosytober 2025 CosyTober is a “cosy alternative to #Inktober”. The idea is the same, all during October, each day a prompt is given and artists are asked to draw, paint or otherwise create something inspired by the prompt and post it to social media. I'…

via splitbrain.org - blog October 31, 2025

Generated by openring

Buy Me a Coffee at ko-fi.com

Be nice to each other!



Last updated: 2025-11-06 20:49:30 +0000
v25.14.P1106

© Andrew Conlin 2023-2025
All rights reverse engineered