Maintainer's Remorse 
====================

There's an ongoing discussion on the 
circumlunar.space bulletin board 
ranging around several topics: the 
complexity of modern software, poor 
documentation, the tendency to shift 
to containerized solutions (a la 
Solene's recent blog), the loss of 
expertise among server admins (who I 
would say are making the migration 
from server mechanic to server 
technician status[1]), and lastly, how 
the direction of all of this is making 
"IT as a hobby" less fun.

I want to tackle that last point. If 
you self-host anything, gopher, 
gemini, websites, your own "cloud", 
etc., you're engaged in IT as a hobby. 
None of us have to do those things. We 
could find and pay for reasonably 
secure, privacy-respecting 
alternatives in the majority of cases. 
For example, I don't need to run a 
radicale server. I trust that Posteo 
would host my calendar and contacts 
ethically for me.

We do that kind of thing because we 
like DIY and we do it on principle: we 
want to personally understand the 
systems we use, and we feel a little 
more control in a world that works 
hard to centralize expertise and pull 
us into walled and surveilled gardens. 
I'm sure there are many additional 
reasons, but those undoubtedly fit 
many of us.

There's a cost to DIY IT though. I 
mentioned in that discussion on 
circumlunar.space that I have a file 
on my computer called "server mess." I 
created it one night due to the angst 
of having six different servers on the 
go.

Some were quite easy to set up: none 
moreso than my gopher server. Others 
involved full days (or more) of 
following instructions, editing 
byzantine config files, testing by 
trial and error, etc. My linux skills 
are limited and setting up particular 
services was a real challenge, 
especially since open source software 
is often quite poorly documented. It's 
hard to RTFM when there isn't one. Man 
pages, if they exist, often include 
certain leaps in logic that assume the 
user knows something that they don't. 
How many times have you figured out 
how to install and configure a piece 
of software from many different 
websites -- cobbling together advice 
on different distro versions or from 
different distributions entirely? I 
use Debian, which is quite popular. 
There are a lot of support articles 
for Debian and Ubuntu out there. But 
I've learned a lot from the Arch Linux 
website.

In any case, here's the crux of the 
problem. Once you've got things up and 
running, you've created an ongoing 
set of obligations. Set up another 
program and you've just added to your 
obligations. Repeat. Repeat. Repeat. 

First, you need to maintain those 
installations. That's (potentially) 
easy if the installations involved 
something like an apt-get and a config 
file. It's harder if you got the 
software from a git repository or 
downloaded a package from a website. 
Did you record your steps? Did you 
include comments on why you did what 
you did in the config files? Are you 
going to remember how this all works 
later? Do you need to check that git 
repository or website periodically for 
updates?

Second, you need to make backups. 
There are various ways of doing this. 
I'm not sure how many people fully 
automate their backups, but my scripts 
still require a bit of intervention, 
so I need to trigger the backup 
process every once in a while. I 
should fully automate the backups 
including rsyncing them all somewhere. 
You can criticize me for that. I 
accept it. But have you done recent 
backups?

Lastly, you're the tech support. When 
something stops working, you're 
responsible. You have to find out what 
went wrong. Do you even remember how 
you installed and configured the damn 
thing? Did you write it all down or 
are there a dozen different sites on 
the setup of that particular software 
bookmarked in your browser? If it's 
the latter, congratulations, you get 
to relearn how to navigate that maze 
all over again!

That brings me to the central point of 
this phlog entry. The person who 
started the discussion at 
circumlunar.space said that they were 
tired of it all. So am I. I have 
maintainer's remorse. I keep that 
"server mess" text file on my computer 
so that I don't add to it. The 
mountain of obligation is large enough 
already. Someone on gopher or gemini 
recently wrote about the mental 
anguish created by having unsorted 
files all over your computer. It's 
kind of like that. Ugh. All that 
chaos.

These days, when I look for a solution 
to a problem, I look for the absolute 
minimum effort option. I try to avoid 
self-hosting anything. One example is 
notes. I have looked for simple, 
syncable self-hosted note-taking 
software. I've never found anything 
usable[2]. So I have all my notes in a 
single text file. I email that file 
back and forth when I make changes. 
It's searchable. There are redundant, 
incremental backups on my laptop, my 
phone, and in my email account. It's 
good enough.

For that matter, a paper notebook 
would have been good enough. 

And it wouldn't have required any 
setup or maintenance.


-----------

[1] See gopher://zaibatsu.circumlunar.space/0/%7evisiblink/phlog/20210710

[2] Joplin would be usable if it 
wasn't a huge electron mess that 
barely starts on my phone. SilentNotes 
would also be good, but it's only 
available for Windows and Android.