Thu, 17 Sep 2026

Notes, and Replacing Proprietary Services

— SjG @ 12:31 pm

I’ve gone through a lot of notes apps in my time. I’ve used SimpleNotes, Joplin, Obsidian, and Apple Notes. My requirements are relatively simple: notes must be fast and easy to enter, I need to be able to search through them expeditiously, I need to be able to organize them by nested folder structure (e.g., work > meetings > clientX), I need to be able to edit them offline, and I need them to sync between my desktop (MacOS) and my phone (iOS). I need them to be encrypted if the notes are sitting on someone else’s server.

There are a bunch of other features I’d really like to have too: ordinary text files, easily exportable to a portable format (pure text ideally, markdown acceptable, Word or PDF as a last resort), local encryption or password protection of notes, versioning. I’d like the program to be free or a one-time payment; I don’t want to be stuck with yet another subscription. Other ideal-but-not-absolutely-necessary features would be scriptability, support for “to-do” style lists, F/OSS.

For various reasons, every year or two, I get frustrated with the note program I’m using, and painfully switch. Most recently, I went from Obsidian to Apple Notes.

Apple, however, has been annoying me. They’re stuffing AI and “Apple Intelligence” into everything, and I’m old, and cranky, and believe in the benefits of human creation, and I just don’t want it. I want a platform that respects my wishes rather than tells me what’s best for me. I know, I know, Apple has always had their own opinion of what I wanted, but for many years it was close enough that I was willing to go with it. But the mandatory AI is crossing the Rubicon.

Despite the fact that Linux ecosystem source code is now widely being written using AI, I still have the ability to turn it off on the user side. But if I switch to a Linux desktop, I have a new requirement for my notes: they need to be cross platform. (Also, dunno what I can do about switching to a non-AI-ridden phone. Maybe it’s time for a dumb phone.)

Anyway, I’m moving back towards Obsidian.

I’ve always used a shared filesystem approach to syncing Obsidian: my “vault” was stored on in an iCloud directory. This isn’t perfect, but works so long as I’m careful not to edit on two devices at the same time or the same note when devices are offline. However, if I go cross-platform, iCloud will no longer be viable. I could probably move to Dropbox — there are clients available for Linux. The Obsidian app on the iPhone can access that through additional plugins, but then I’m beholden to yet another 3rd party service. Maybe it’s time to install my own file-share/sync.

I’m currently working on setting up a VPS with Seafile. If all goes well, I can try syncing Obsidian across platforms using this Seafile community server instance and the Seafile-sync plugin. I’ll report back here if I get anywhere.

Sun, 10 Nov 2024

Obsolescence

— SjG @ 11:06 am

[insert old man yelling at cloud meme here]

Everybody’s pissed off because things are crappy and they used to be better. I know I certainly am. But it’s not “regulations” or “wokeness” that forces me to buy a $56 part to fix the dishwasher because a 5¢ switch embedded in an un-openable assembly burned out.

When we first moved into this house twenty five years ago, there were plumbing problems I had to fix. The kitchen faucet was leaking. In those days, there was B&B Hardware, an old style hardware store. I brought the weird brass fitting from the faucet to B&B, took a number at the plumbing desk, and eventually talked with the guy there. He cast a sardonic eye on the fitting, and said “You’ve got a 1950s Moen. In the 60s they changed this to have an additional flange right here for an o-ring, and in the 70s they stopped making this style altogether. The good news is I have a compatible part.” He went up on his ladder and sorted through some boxes and found me a part. It was expensive — nearly 15 dollars. But it worked.

Well, the kitchen sink’s been redone in the interim, and the faucet replaced with a very low-end wall-mount double-handle bridge faucet which lasted about seven years before being replaced by the new (yet not parts-compatible) version. And the new one’s leaking. So I took it apart, grimaced at the cheapness of the thin metals and plastic fittings. I headed to Home Depot, since B&B is long gone. At the big box, I got a shrug from the worker. No, there aren’t parts for those. They don’t sell that model, but new kitchen faucets are on aisle 6, and washers and stuff are on aisle 11, bay 9.

When I finally found washers and o-rings on aisle 12 bay 15, they didn’t have a replacement for the cracked plastic compression retaining ring. So I bought new o-rings in the hope that screwing down the conical ring cap tightly would continue to work. I went through the self-checkout, where the scanner pulled up the wrong price for the item and the employee that came over sneered at my mask and low-key accused me of shoplifting when he saw the old, broken part I’d brought along.

Eventually, it worked out. The sink is not leaking, I have 8 more of the o-rings (potentially saving me from buying another $2.92+tax set next time, if the smog doesn’t degrade them in storage), and I can go on to do other chores.

Tue, 13 Aug 2024

Another Dependency Hell

— SjG @ 7:01 am

So Google requires an Android app be updated to a later API version if it’s to be distributed. No version 33 for the Play Store! That means a few gigabytes of downloads for the updated Android Studio and Android v35 SDKs.

Unfortunately, this Android app is built in Ionic/Angular/Capacitor. So we have to update from Ionic 7 to Ionic 8, Angular 16 to Angular 18, and Capacitor 5 to Capacitor 6. But that means we can’t use Nodejs 16 anymore. Which means that the Docker container we use for building needs to upgraded from Ubuntu 18.04 to at least 20.04.

We haven’t even gotten to the obsoleted Capacitor plugins yet. @capacitor-community/barcode-scanner has been deprecated in favor of @capacitor-mlkit/barcode-scanning, and I’m sure there are others. I’m just hoping the APIs are at least reasonably similar.

Once again, my plaint is: why didn’t I become a plumber?

Sun, 9 Apr 2023

Ugh, that Old Yak-shaving Refrain

— SjG @ 12:28 pm

Went to update an image gallery with some new pictures. I wrote the gallery generating code four years ago, but the version of PHP on the server has been updated and one of the libraries I use evidently relies on deprecated syntax ($string{$char_index} for the curious, which now would be $string[$char_index]). So I tried to check out the repo from GitHub, only to find they’ve updated their SSH host keys, so I need to fix that before I can fix the code problem. So I tried to update that, but had packed my Yubikey off in a drawer in the office…

Sat, 19 Sep 2020

Goodbye Google

— SjG @ 11:08 am

I’ve finally removed the Google Ads and analytics from this site.

Many years ago, I thought it mattered where people went on the site and which posts were most useful. I also had the delusion that there would be enough visits that the ads might help pay for the hosting.

Ah, to be young, naïve, and full of hope. That ship ship has certainly sailed.

Anyway, there’s no point in cluttering up the blog with surveillance crap. I’m just sorry I left it there for so long.