Moving Cloudflare out of the critical path
I'm a big fan of Cloudflare, but the extended outage on November 18th was long enough that I started wondering whether I really needed it to be in the critical request path for my blog.
I'm a big fan of Cloudflare, but the extended outage on November 18th was long enough that I started wondering whether I really needed it to be in the critical request path for my blog.
A price negotiation call to Virgin Media ended up with me upgrading to 5Gb fibre broadband.
This took me on a bit of a journey investigating things that have changed in home networking since 1Gb networking cards hit the scene.
Turns out, somehow both more than I expected and less than I imagined!
I started building a new blog in December 2024, and wrote my first substantial post in January 2025, but I have only published a handful of posts since then. What does that tell me?
I recently refurbished an old iPod Classic, and purchased some albums in the iTunes Store (yes, it still exists!).
Once I found out that most iPod Classics are capable of playing Apple's lossless format, ALAC, I really wanted to sync them over to experience this heretofore unimaginable audio clarity.
However, even though I could download them, the albums refused to show up in the sync list. Switching back to AAC worked fine, but ALAC was not working.
I needed an invoice generator to quickly produce some random test invoices while building Manano, as part of a feature letting tradesmen track receipts by sending photos to our WhatsApp number.
I tried a few invoice generators that showed up in Google results, but all of them were oddly slow, wouldn't remember details without signing up, and sometimes produced odd looking outputs.
Eventually I realized it would probably be straight forward enough to whip one up myself…
A few months ago my parents gave me a box of my stuff they’ve had variously in attics and storage since I moved out in my early twenties.
One of the things in it was my Sega Mega Drive — boxed, and with games and accessories.
Unfortunately, I didn't have a TV that I could connect it to! The only connector packaged with it was designed to plug into the aerial socket of a CRT television.
In the last week however, I've gotten hold of a CRT television after a bit of digging around.
We've been going over the pros and cons of the current route, and have decided that the V-shaped travel route is not our best option.
Instead, we're going to jump from Hokkaido to Okinawa, and head back up from there!
As I wrote about in February, Ash and I are traveling to Japan for three months (May → August). It's a trip I've always wanted to take, and since I'm between work engagements I've been taking some time to prepare.
Three months is a long time to spend in a country you've never visited, and I'm going to go over a few ways we've been preparing.
I've been fascinated by Japan since I was a teenager. Thanks to Hayao Miyazaki (among others) the food, landscape, and architecture all exist in some dreamy, liminal space in my mind alongside wood sprites and lost civilizations.
Maybe it sounds daft, but the idea of actually visiting the country always seemed like it would break the spell somehow? Like anywhere, Japan has crime, social problems, bad weather, and if I go, me.

Supabase is a collection of backend services (Postgres, PostgREST auth service, S3 storage, function runtime) that you can develop against locally and then deploy to production.
They don't yet provide a fully integrated background job running system. This post shows a detailed example of how you might keep your stack slim and build a system like this for yourself in Supabase, rather than using a third party!