The fifth day of Christmas, and perhaps my last opportunity of the season to justify having trifle… for breakfast.
Blog
Note #25419
Book Exchange
Our family Christmas Eve tradition, which we absolutely stole from Icelandic traditions (cultural appropriation? I’m not sure…) via some newspaper article we saw years ago, is a book exchange.
verybody gives each other person a book,then we sit around and read until people retire to bed (first the kids, then – eventually – the adults).
We love it.
Note #25413
Xmas Post
Note #25406
Too Late
Moving Three Rings’ Servers
Yesterday, I fulfilled the primary Three Rings objective I set for myself when I kicked off my sabbatical twelve weeks ago and migrated the entire application to a new hosting provider (making a stack of related improvements along the way).
I did some work on this project during my Three Rings-focussed International Volunteer Day last week, but it feels like I’ve been working on it for much longer than that. And it feels like it… because I have been.
Months prior, I was comparing different providers and their relative merits, making sure that our (quirky and specific) needs could be met. Weeks beforehand, I was running a “dry run” every four or five days, streamlining the process of moving the ~450GB1 of live data while minimising downtime. Days before the event felt like the countdown for a rocket launch, with final preparations underway: reducing DNS time-to-lives, ensuring users knew about our downtime window, and generally fitting in a little time to panic.
logrotate. When you’re building architecture for a system as gnarly as Three Rings, there’s
about a billion tools that need such careful tweaking2.
It’s challenging to pull off a “big”, intensive operation like this in an entirely voluntary operation. I’m not saying I couldn’t have done it were I not on sabbatical, but it’d certainly have been harder and riskier.
But then, I also couldn’t have done it without the kickass team of volunteers I’ve surrounded myself with. I guess the real success story here is in the power of a well-aligned team and in volunteer effort.
Footnotes
1 Three Rings‘ user data is represented by a little under 70GB of MariaDB databases plus about 380GB of organisational storage: volunteer photos, files, email attachments, and the like. Certainly not massive by comparison to, say, social media sites, search engines, and larger eCommerce platforms… but large enough that moving it takes a little planning!
2 Okay, a billion tools to configure? That’s an exaggeration. Especially now: since the architectural changes I’ve put in place this week, for example, production app server builds of Three Rings no require a custom-compiled build of Nginx (yes, this really was something we used to need).
3 Which you’d think I’d have realised with my more-successful recent second attempt at secret-cabinet-making.
Dan Q wrote note for GC9GTV3 Drive Slowly; Fox Crossing
This checkin to GC9GTV3 Drive Slowly; Fox Crossing reflects a geocaching.com log entry. See more of Dan's cache logs.
Checked up on this cache during a dog walk nearby. All seems good, cache is ready to be found!
Note #25383
Today I learned that you can use reportValidity() on a HTML5
input of e.g. type="email" to force the browser to run it’s own validation, without waiting for the containing form to be submitted (which in some cases might not
happen, e.g. if you’re handling input using JS).
That’s cool.
Building another secret cabinet
Earlier this year, after our loft conversion work, I built a secret cabinet into the bookshelves I constructed for my new bedroom. My 10-year-old was particularly taken with it1, and so I promised her that when she moved bedroom I’d build one for her.
My initial order of fake book fronts was damaged in transit but the excellent eBay seller I’d been dealing with immediately sent a comparable replacement. This had left me with a spare-but-damaged set of fake book fronts, but with a little gluing, sawing and filing I was able to turn them into a second usable fake cabinet front.
My 10-year-old’s fake cabinet isn’t quite as sophisticated as mine (no Raspberry Pi Zero, solenoids, or electronic locks) – you just have to know where it is and pull on the correct corner of it to release it – but she still thinks it’s pretty magical2.
A cut-down plank of plyboard stained the right colour, some offcuts of skirting board, a couple of butt hinges, some L-brackets, some bathroom mirror mounting tape, the fake book fronts, and an hour and a half’s work seems totally worth it to give a child the magical experience of a secret compartment in their bedroom. My carpentry’s improved since my one, too: this time I measured twice before cutting3 and it paid-off with a cleaner, straighter finish.
Footnotes
1 She was pretty impressed already at the secret cabinet, but perhaps more-so when she discovered that the fake book fronts I’d used were part of the set of The School for Good and Evil, the apparently-disappointing film version of one of her favourite series’ of books.
2 Which, frankly, it is. I wish I’d had a secret compartment in my bedroom bookshelves when I was her age!
3 Somebody should make a saying about that.
Note #25375
Today, while I cooked dinner, I introduced my two children (aged 10 and 8) to Goat Simulator.
Within half an hour, they’d added an imaginative twist and a role-playing element. My eldest had decreed themselves Angel of Goats and the younger Goat Devil and the two were locked in an endless battle to control the holy land at the top of a rollercoaster.
The shrieks of joy and surprise from the living room could be heard throughout the entire house. Perhaps our whole village.
Maybe Later
This is a repost promoting content originally published elsewhere. See more things Dan's reposted.
Maybe Later
“Install update” Maybe later.
“Sign in to access this content” No.
“It’s better in the app!” Whose fault is that?
“We completely redesigned this thing you need to do your job for no good reason” Got it.
“Disable any adblocker.” Absolutely not.
…
I don’t know if I’m supposed to read this as a poem, but I did, and I love it. It speaks to me. It speaks of my experience of using (way too much of) the Web nowadays, enshittified as it is.
(This toot about the evolution of videogaming seems almost like a sequel. Less like a poem, though.)
But yeah, I run a fine-tuned setup on most of my computers that works for me… by working against most of the way the Web seems to expect me to use it, these days. I block all third-party JavaScript and cookies by default (and drops first-party cookies extremely quickly). I use plugins to quietly reject consent banners, suppress soft paywalls, and so on. And when I come across sites that don’t work that way, I make a case-by-case decision on whether to use them at all (if you hide some features in your “app” only, I just don’t use those features).
Sure, there are probably half a dozen websites that you might use that I can’t. But in exchange I use a Web that’s fast, clean, and easy-to-read.
And just sometimes: when I’m on somebody else’s computer and I see an ad, or a cookie consent banner, or a “log in to keep reading” message, or a website weighed down and crawling because of the dozens of tracking scripts, or similar… I’m surprised to remember that these things actually exist, and wonder for a moment how people who do see them all time time cope with them!
Sigh.
Anyway: this was an excellent poem, assuming it was supposed to be interpreted as being a poem. Otherwise, it was an excellent whatever-it-is.
Bacon Solves Little, Improves Much
Even when you’re not remotely ready to think about Christmas yet and yet it keeps getting closer every second.
Even when the house is an absolute shambles and trying to rectify that is one step forward/one step sideways/three steps back/now put your hands on your hips and wait, what was I supposed to be tidying again?
Even when the electricity keeps yo-yoing every few minutes as the country continues to be battered by a storm.
Even when you spent most of the evening in the hospital with your injured child and then most of the night habitually getting up just to reassure yourself he’s still breathing (he’s fine, by the way!).
Even then, there’s still the comfort of a bacon sarnie for breakfast. 😋
Note #25369
Here in Oxfordshire we’re nowhere near the epicentre of Storm Darragh, but we’re still feeling the effects. A huge tree came down and blocked the Thorney Leys road in Witney near Burwell Meadow and the kids and I needed to take an ad-hoc diversion.
🤞 Fingers crossed for all my friends and family in worse-hit places!







