Hello, my name is rollcat, and I like playful
What I don’t necessarily like is hoarding stuff (especially when it
comes with a recurring expense), so instead I’m going to just throw
this idea out here, in the hope that someone will do something playful
and interesting with it: a domain name that starts with some form of a
negation, followed by one of those fancy new gTLDs, for example:
There are over 1500 TLDs!
The possibilities are endless. Try searching on
Sync vs async work
This is a reflection on PG’s famous essay, “Maker’s Schedule,
Manager’s Schedule”. The fact I’m writing this while in the
middle of producing a live stream is only a tiny bit ironic.
I use getopt almost exclusively in all software that I write by
myself, and often insist on using it when collaborating with others,
even when the language convention is to use something else.
The reason is simple: getopt is a part of the user interface, and user
interfaces should strive to be simple and consistent. As an end user,
I find it jarring when, for example, I have to run a script by
specifying the interpreter by hand, or when the language-specific
extension is a part of the file name. This is an implementation detail
which should not concern me - the
#! should take care of that for
me. Similarly, getopt is over 40 years old, is supported nearly
universally, and is easy to understand both for the user and the
Observation: most calendar software I regularly use (the default apps
on Mac & iOS; World Time Buddy, & some others) is not great when
dealing with events that end past midnight. For example, in WTB I
can’t select a range outside the 24h period spanning the “home” time
zone; Apple’s apps show the event on the next day as if it was
scheduled ON that day (which Calendar Timeline doesn’t do); etc.
I consider this an accessibility problem, where accessibility is
defined as “making your software accessible to everyone”.
Docker: ls without ls
Quick tip: if you want to inspect the filesystem of a running Docker
container, but it doesn’t even include a shell, let alone
can do the following:
docker export some-container | tar -tf -
You can also print out the contents of a single file with
the leading slash):
docker export some-container | tar -xOf - etc/some/file.txt
Last week I had to work on a Django app again. Since Python is
a very portable language that works on many different platforms, of
course I’ve had to work on that in a Docker container, in a
Linux VM in Qemu, on an arm64 Mac running macOS. Also
because the official Docker for Desktop app is somewhat annoying, I’ve
been giving Lima a try. Also because the standard Django
development web server doesn’t offer the best debugging experience,
I’ve been running an alternative server through django-extensions.
I’ve counted at least 8 distinct software vendors so far in that
paragraph. When I’ve hit a bug that completely killed my productivity,
it was far from obvious which one to look at. Let’s take a dive and
see what happened.
Quick tip: soundproofing your homelab
Quick tip: if your home server happens to be a humble PC tower, rather
than a rackmount blade, you can insert a layer of styrofoam or bubble
wrap underneath it, to reduce the noise transferred from the fans &
hard drives into the floor or the desk.
One day: a fanless server, with all SSDs and no HDDs.
The Old Computer Challenge v2: Days 1&2 Summary
Days 1&2 of The Old Computer Challenge v2! I found that being almost constantly
online during the working hours actually takes a lot away from the challenge - I’ve had
to make a few adjustments.