My Approach to Online Notes

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[a]” (i.e., “on the computer,” not “on the internet”).

[a]

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[a] and Day One[b] when they both initially came out.

[a]
[b]

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:

[a]
[b]

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[a]/vim[b]/NeoVim[c] 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[d]!) that have a very good vi input mode, but I still prefer to just edit files in vim/NeoVim.

[a]
[b]
[c]
[d]

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[a]. 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.

[a]

But when I do, I have found Markor[a] to be an excellent solution for editing markdown files within a directory structure. Oh, I guess I should specify that I keep[b] all of my notes in Markdown[c] 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).

[a]
[b]
[c]

# Mobile-first

For notes that I need to keep synced 24/7 and editable on my phone, I use Simplenote[a]. 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.

[a]
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[a], the somewhat ugly-but-functional python-based Simplenote GUI that’s very straightforward and easy-to-use, and there’s sncli[b], the very simple-but-intuitive TUI (command line interface) for Simplenote.

[a]
[b]

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