// Personal website of Chris Smith

Monthly Meanderings: September 2026

Published on

Where has the year gone? How is it October already? Although I’m actually writing this in September, so it isn’t. But the point still stands, I think. Man, I’m getting good at these intros. They just flow right off the page, right? … Right?

Website updates

A couple of new posts appeared in September. Lego, ACME DNS-01, and negatively-cached surprises is a rather snappily titled post about debugging an issue a friend had with Centauri, my reverse proxy. Turns out a combination of default settings in the Lego library and the perfectly reasonable behaviour of systemd-resolved makes for a bad time. Maybe that should have had a spoiler warning.

Then in the expanding scope of coding agents I talk a bit about how my use of LLMs for coding has evolved, and how I “vibed” a perfect-for-me music player with a single, short prompt. It’s a spiritual successor to an app can be a ready meal from last year. Now the microwave is even easier to operate. Or operates on bigger ready meals? It’s a good job I didn’t try to keep the same analogy in the post.

Under the hood, I’ve been slowly working on changing how data on my website is handled. Previously, if I wanted to display something like board game stats, then chameth.com had to have a complete copy of all my board game data so it could query whatever information was needed. As I added more and more bits and pieces, this felt heavier and heavier, and in some cases was straight-up duplicating data and logic that I had elsewhere. I’m instead moving to a model where the shortcodes pull data from a remote source and cache it for an appropriate amount of time. It’s then refreshed in the background for as long as it’s “live”. So the monthly recap embeds you’ll see below refresh until a few days into October to pick up any straggling data, and are then frozen. It doesn’t really make any difference to what you see on the page, but the architecture pleases me, and I got to delete a whole bunch of code.

Finally, I had to tweak the feed builder I mentioned last month. Some scrapers managed to stumble into it, then ignored all the nofollow and noindex tags, and decided to try and scrape every possible combination of posts. That is a lot of combinations. Some of the scrapers are lovely things that pretend to be Chrome and use a different residential proxy per connection, so you can’t simply block IPs or user agents. I’ve changed the builder so that each mutation is a form submission, which seems to have helped a bit, but there are still some hitting all the URLs they discovered before the change.

I drafted this post a few days before publishing it, and originally wrote “the scrapers didn’t actually put any noticeable load on the website, but they did manage to screw up my analytics!” Guess what! Literally as I went to publish this post my monitoring went off because the site stopped responding after one scraper did 100 requests per second from a bunch of different IPs. Guess I’m writing rate limiting and ASN blocking code tomorrow.

Entertainment

Oh look, one of those new cached shortcode things I was talking about! When last month’s post went live, chameth.com had a database of every track I’d listened to since I started logging them. Now instead there’s a dedicated service for that, and it just passes the specific information over. In this case, my most played albums this month:

Album Artist Unique tracks played Total tracks played
1 Cover art for The Strange Case of… The Strange Case of… Halestorm 7 23
2 Cover art for From Zero From Zero Linkin Park 7 22
3 Cover art for Good Girl Gone Bad: Reloaded Good Girl Gone Bad: Reloaded Rihanna 6 22
4 Cover art for KPop Demon Hunters (Soundtrack from the Netflix Film) KPop Demon Hunters (Soundtrack from the Netflix Film) KPop Demon Hunters Cast 5 21
5 Cover art for Love, Drugs & Misery Love, Drugs & Misery Eva Under Fire 10 21
6 Cover art for Hands Hands Little Boots 7 20
7 Cover art for THE WAY THE WAY Dorothy 6 20
8 Cover art for Fallen Fallen Evanescence 7 19
9 Cover art for Villainous Villainous Eva Under Fire 7 19
10 Cover art for American Dream American Dream DIAMANTE 7 18

As I said last month, this is probably going to be pretty same-y. There are some small movements, but it’s still mostly just “albums I love” combined with “albums I like that have songs with a suitable BPM for running” in some order.

I watched a bit of TV this month, catching up on the most recent seasons of Rick and Morty. It’s nice having something relatively short to watch when you’re at a bit of a loose end, or don’t want to have to remember what contrived plot arc is going on in a longer-form series. I was also pleasantly surprised to discover that SNL UK is back. It’s — as you’d expect — more of the same standard SNL formula, with some hits and some misses, but Weekend Update remains consistently hilarious.

Most of the rest of my entertainment time has been spent in World of Warcraft, in one form or another. I picked up beta access to WoW: Forever, which is basically a semi-modernised version of classic WoW but without following the same expansions as the original. Just… classic… forever. I initially didn’t think I’d like it, given how opposed classic players seem to be to everything nice, but so far it seems like they’ve done a good job balancing it. It feels a lot more like an RPG than modern WoW, where everything feels like a thin veneer over getting gear or various currencies. It’s still early though, so I’m not sure how much “sticking power” it’ll have with me.

In normal WoW, I’ve been playing both my Shaman and Monk healers. I’m leaning back towards Monk now. It’s still undertuned despite several buffs, but I don’t think that actually matters at the level I’m playing at. After playing around with some of the talents, I’m happier with it than I was, and I still find it a lot more fun to play than the Shaman, even if it doesn’t quite perform as well.

Miraceth

Level 90

Female Night Elf

Mistweaver Monk

323 average item level

Miraceth-Terenas

Professions

Midnight Leatherworking100/100
Midnight Skinning100/100
Midnight Cooking100/100
Midnight Fishing110/300

Mythic+

Altar of Fangs +10 18:53 334
Den of Nalorakk +12 27:40 370
Kings' Rest +12 32:35 365
Murder Row +12 24:02 376
Ruby Life Pools +12 21:31 374
Temple of Sethraliss +10 23:12 330
The Blinding Vale +10 23:56 328
Voidscar Arena +12 29:38 365
Total M+ rating 2842
Hirameth

Level 90

Female Dwarf

Restoration Shaman

320 average item level

Hirameth-Terenas

Professions

Midnight Blacksmithing100/100
Midnight Inscription92/100
Midnight Fishing35/300

Mythic+

Altar of Fangs +12 27:28 368
Den of Nalorakk +12 28:10 369
Kings' Rest +14 26:20 403
Murder Row +12 25:04 375
Ruby Life Pools +12 25:19 369
Temple of Sethraliss +12 24:13 374
The Blinding Vale +12 20:23 377
Voidscar Arena +12 23:27 373
Total M+ rating 3008

Fitness

Photo of a medal: a black star with a circle around it, with the word 'Finisher' engraved. An attached lanyard says '5km finisher'

A medal for running my first 5k

This has been a fun month for my running activities! I ran my first timed 5k at the start of the month, finishing in 41:22. My aim was for a pace of around 8 minutes per km, and the actual course was 5.2km, so I was pretty much spot on. It’s not a very fast pace, but given I only started running at the end of June I’m pretty happy with it. I’m now working my way up towards 10k, then I’m going to spend a little while just building volume and hopefully some speed.

Now that I can comfortably run 5km, albeit rather slowly, I’ve started going to my local parkrun each week. Naturally I’ve created a webpage that tracks my stats and results. In hindsight I could have started going much earlier, and done some of my walk-run training there, but I didn’t want to be around that many people when I was still finding my feet.

I feel like I’m getting a bit better at pacing myself, but I’m also conscious that I don’t really know what my “all-out” speed is and how long I can maintain it for. I don’t think I want to do a time trial while I’m working towards a 10k, so for now I’ll just stick with slowly but surely pushing my PBs down:

14

activities

8h 0m

total time

59.8km

total distance

6.5km

longest distance

  • 🏆️ New PB 400m 2:36 2:26
  • 🏆️ New PB 800m 5:54 5:15
  • 🏆️ New PB 1km 7:27 6:40
  • 🏆️ New PB 1 mile 12:11 11:00
  • 🏆️ New PB 2km 15:13 13:35
  • 🏆️ New PB 3km 23:05 20:37
  • 🏆️ New PB 5km 38:45 37:04

I managed to entirely avoid getting on my bike this month. A few planned rides fell through, and the rest of the time the weather was miserable, or my legs were still raising complaints about previous runs, or I was doing this pesky thing called “work”, or I just didn’t feel like it. Hopefully I can squeeze a decent ride in at some point before the weather turns even more, but that list of excuses looks nigh insurmountable.

Around the web

Prompts aren’t real

An interesting presentation from Dan McKinley, who I remember from the boring technology club. He seems to be single-handedly propping up the entire .club TLD. Anyway, it’s an interesting look at how some LLM tooling works, and contrasts starkly with how half-assed a lot of support bots seem to be.

The Contagion of Fear

Bryan Cantrill talks about the recent hysteria concerning the risk of LLMs wiping out humanity. Bryan always seems to have very sensible takes, and presents them very well, and this one is no exception.

Moving from WordPress to Hugo

A post from my friend Simon about redoing his website. I particularly like the screenshots of the previous versions at the end. I’ve been meaning to do a “History of this site” post for a while, and seeing this has moved it up my priority list.

FLIP Fluid on Flip Dots

I find hardware projects like these more and more appealing as the software world gets more and more LLMy. They’re physical, and whimsical, and you can’t just recreate it by typing some words into a prompt. Now if you’ll excuse me, I have a sudden urge to solder something…

This content is also published/discussed on these external sites:

See the colophon for information on how personal data is used and retained when submitting this form.

Related posts

Here are some semantically similar posts. Want to subscribe using a feed reader? You can build a feed with just posts similar to this one. Standard feeds are also available, but are approximately 42% less fun.

Word cloud featuring: month, marathon, plays, post, mistweaver, plans, rated, training, stats, next, title, gaming, music, cycle, half, season, listen, fitness, hacker, habits, versed, widgets

Monthly Meanderings: August 2026

Another month, another edition of “What’s Chris been up to?”. Fun fact: I very nearly published this post with a “[intro]” placeholder here instead of this paragraph, despite proofreading it multiple times. “Yep, that’s where the intro will go, all good”. Now instead we have this weirdly meta introduction. Website updates and other projects A few web...

Word cloud featuring: month, post, cool, world, spec, films, standard, discontinuities, disclosure, warcraft, alts, keys, find, april, entertainment, self-referred, called, bunch, photo, terrible, interesting, suspicious

Monthly Meanderings: June 2026

Writing these monthly posts is making me very aware of how quickly the year is going. I’m not sure I like that at all. June saw some truly horrible hot weather in the UK; it’s almost like murdering the planet with CO₂ emissions was a terrible, terrible idea. My dodgy knee that I mentioned way back in the April post feels like it’s finally back to normal. I had low expectations ...

Word cloud featuring: film, page, haven't, tornado, game, watch, series, book, bottom, february, horror, really, moons, beneath, board, queries, cleaning, automated, dragoneye, randomised, broken, tapping, website

Monthly Meanderings: February 2026

It doesn’t feel like a whole month has gone past since I wrote the last instalment of Monthly Meanderings, even allowing for how short a month February is. For more context on this series, you can check out the introduction to the first edition. Website updates I only wrote one new blog post this month: Just a nod, which is about the “nod” button I added to the bottom of most pag...