My Approach to Online Notes
Sat 19 July 2025
Note: When I say "Online" in this context, I literally mean "on a computer," vs. "on paper." This is the older, more classic meaning of the word, similar to "on-line documentation" (i.e., "on the computer," not "on the internet").
Background
I know a lot of folks like solutions like Joplin and Obsidian, and in a previous decade/lifetime (think about it), I rather enjoyed using "full-fat" tools like Evernote and Day One when they both initially came out.
In time, like many others in the communities I inhabit online, I grew tired of using primarily web-based solutions and technologies. They burn more energy, contribute to the e-waste upgrade cycle, and have serious and laughably bad usability issues. I don't begrudge anyone who chooses to use that type of tool, but it's not for me, and I think I will say that it's just not good technology. Not everything has to be written in super-efficient C, but just slapping together the universe in JavaScript and web technologies is getting pretty old. Ok, RANT OVER! 😄
Objectives
Here are the main things I look for in a technical solution:
- Cross-platform
- For notes particularly, I have to be able to enter notes on the fly on my phone when out-and-about without worrying about saving or syncing, or authenticating to a website.
- Elegance
- Synchronization
- I know that I said that I do not mean "on the internet" when I say "on-line," but that doesn't mean that I don't want my notes to be "online" in the internet sense. I have a phone, 4-5 old laptops running around, and a desktop. I need all of these to be synchronized transparently.
What I actually ended up was using two different solutions for two different sets of notes. One solution is 100% functional for mobile/web and 90% functional for desktop use, and the other is 100% functional for desktop use, and about 75% functional for mobile use (not web). I keep a subset of my notes that I need to access on the go on the mobile/web-first solution, and the rest of my notes (which I don't access as often, or just don't need on-the-go) on the desktop-first solution.
Solutions
So let's go over them!
Desktop-first
vi/vim/NeoVim is a well-loved meme within the Linux community ("Help, how do I get out of here?!?"), and I have loved using it since the early 2000s. I will give vi its own article, but any note-taking solution I use must allow me to edit the notes in vim, non-negotiable. There are some graphical editors (like Kate!) that have a very good vi input mode, but I still prefer to just edit files in vim/NeoVim.
So, for my "desktop-first" note-taking where I won't need to access the notes on-the-go too often, I just have a Notes
directory on my machine that I get synced between computers (and my phone) with Syncthing. Now it's important to note that running Syncthing constantly on your phone will drain the battery pretty quickly in the course of a day, so I have it set up to only sync when connected to power. Therefore, the notes I keep synced with Syncthing are the ones I don't have to look up or edit on my phone too often, for fear of editing an older version of the file.
But when I do, I have found Markor to be an excellent solution for editing markdown files within a directory structure. Oh, I guess I should specify that I keep all of my notes in Markdown format. It's just the most natural and enjoyable for me to use, although some others may prefer ReStructured Text, LaTeX, html, or even xml (lol please say it ain't so).
Mobile-first
For notes that I need to keep synced 24/7 and editable on my phone, I use Simplenote. Simplenote has a web interface, an excellent mobile program for both major mobile platforms, an excellent native Mac application, and an Electron application for all of the other desktops.
I thought you don't like Electron!
I don't, particularly, and I don't use the Electron application for Simplenote very often. There are, fortunately, a couple alternatives. There's nvpy, the somewhat ugly-but-functional python-based Simplenote GUI that's very straightforward and easy-to-use, and there's sncli, the very simple-but-intuitive TUI (command line interface) for Simplenote.
I use sncli a great deal to manage most of the notes that I edit daily and need on my phone as well, like shopping lists and blog post ideas. It's a very elegant and simple program, and it does a great job of keeping my Simplenote notes in sync. All it does is sync the notes, gives me a very simple TUI for managing notes, and calls my favorite $EDITOR
(NeoVim).
It's worth noting that sncli had an issue recently where it would not work at all on more recent versions of Python. I also noticed that the synchronization back-end (which I believe is called "Simperium") was occasionally failing, making it impossible for me to synchronize my notes for a few hours at a time every month or so. I'm happy to note that the community around this small software tool came together to update the code and make it work again. I haven't had a single problem with it since I reported the breakage to the developer a couple months ago. (Not to say that I was the first to do so, nor that I had any part in fixing it, but the dev was very nice to answer my emails asking about it at that time).
100 Days to Offload 2025 - Day 41
Category: Tech Tagged: 100DaysToOffload BSD Computing FOSS (Free and Open Source Software) Linux Non-religious post Productivity Unix Tips Writing