The Sherlock Holmes of code
2026-01-03 17:20:42
On my homepage, I have a carousel of what I call "testimonials" — some nice things lovely people said about me over the years.
For the longest time, I'd pick one from the array to display at build time. As part of my work to reduce build time, I decided to display them all so the homepage wasn't considered "new" for every build.
However, this left the issue that it was always the same testimonials visible. Especially on mobile, where you can only see one, new additions wouldn't be immediately surfaced. Buuut I couldn't shuffle the array at build time or I'd incur the wrath of the Build Time Goblins (or something).
The default experience is acceptable. With a sprinkle of JavaScript, we can make it a little bit better for when JavaScript is available.
const carousel = document.querySelector('.carousel');
const slides = [...carousel.querySelectorAll('article')];
const shuffled = [...slides].sort(() => Math.random() - 0.5);
slides.forEach(slide => carousel.removeChild(slide));
shuffled.forEach(slide => carousel.appendChild(slide));
const carousel = document.querySelector('.carousel');
const slides = [...carousel.querySelectorAll('article')];
Math.random() methodconst shuffled = [...slides].sort(() => Math.random() - 0.5);
slides.forEach(slide => carousel.removeChild(slide));
shuffled.forEach(slide => carousel.appendChild(slide));
The Sherlock Holmes of code
That's a good post.
Was a pleasure to work with, Not sure about his Nic Cage fetish but each to their own.
Really lovely work. Excited to dig into more of your writing.
This is such a cool looking photo!
What a beautiful design, I have been enjoying reading your posts and seeing your photography work!
Couldn’t agree more with your post
Love reading your music posts (and all the others!)
your site reminds me of the way the web used to be.
2026-01-02 17:17:53
Understandably different from both Arch Enemy and The Agonist, the new single from Alicia White-Gluz, "The Room Where She Died" is more hard rock than heavy metal. Nice to hear her clean vocals though — a talent squandered by Arch Enemy! Opening with a moving string piece, I thought for a second she was going to go full Nightwish. I will warn you that a lot of the 8:39 run time is spent on a noodling guitar solo that, imho, could have been shorter.
"She Bangs Like A Fairy On Acid" by Elita is exactly the wtf I needed to start my Friday. Shades of that Gothic Lolita thing from the millennium; all breathy vocals and unsettling melodies.
2026-01-02 14:23:51
Following on shortly after the events of "Greenwitch", the fourth book in Cooper's "Sequence" sees our mate, Will Stanton, ushered off to distant family in Wales to convalesce as was the style at the time. But –horror of horrors!– he has some kind of amnesia and is distressed because he knows he has a task to perform but doesn't actually remember what it is. Until he meets enigmatic albino Bran…
I feel like this is the book that would benefit most from some kind of "reading companion" notes; clearly Cooper has created a rich and interesting world but not all the thinking makes it to the page which can come across as "leap of faith" at times.
This isn't my favourite in the Sequence but it's an enjoyable read. It suffers from the curse of a longer series in that the arc of the book is secondary to the arc of the series.
That said, the story arc is succinct and I enjoyed the friendship between Bran and Will.
2026-01-02 06:24:37
I have been tracking a few easy goals over the year to see how I fare. All in all, I think I've done well. Unsure if I'll do a 2026 version but this has been an interesting experiment.
I have a ton of books I have already bought that I haven't yet read. Even though I only really buy 99p books, it still adds up over the year. Maximum monthly spend of £5.
I have a small handful of film cameras and I don't need more. If I can manage to make it to Christmas without buying more, I might treat myself to a Canon AE-1P Minolta SRT101 Minolta SRT Super/303/202. This sales embargo includes lenses and accessories but not, obviously, film and development.
Film and development to not exceed £27 per month. This should roughly equate to two rolls of cheap film and two developments. Realistically, I should only be using one roll (£13.50) but it's so bloody addictive 🙃 Film costs are averaged over months because I buy 5 rolls at a time and store them in the fridge which means, for example, August is £20 on film but September to December is £0
| Month | 📚 | 📷 | 🖼️ |
|---|---|---|---|
| January | ✅ | ✅ | ✅ |
| February | ✅ | ❌ | ✅ |
| March | ✅ | ✅ | ✅ |
| April | ✅ | ✅ | ✅ |
| May | ✅ | ❌ | ✅ |
| June | ✅ | ✅ | ✅ |
| July | ✅ | ✅ | ✅ |
| August | ✅ | ❌ | ✅ |
| September | ✅ | ✅ | ✅ |
| October | ✅ | ✅ | ✅ |
| November | ✅ | ❌ | ✅ |
| December | ✅ | ✅ | ✅ |
This was much easier than expected! A couple of things helped; my Kobo breaking forcing me to resurrect an old Kindle kept me from buying bargains directly from Ratuken, and making a reading goal list kept me from wandering aimlessly into buying new books because shiny shiny but also decision paralysis. I didn't always stick to the list — some titles were bumped because I didn't have them on me at the time or because I wasn't feeling it, some got dropped entirely. It was never the goal to slavishly adhere to the list but to be guided by it.
I have never been an impulsive buyer so I was quite surprised at failing on this one! Looking at the reasons for failure though and I'm not too disappointed — having to buy my dream camera twice in one year is a sadness few will experience and one I hope to never repeat 😂
February fail - bought a Zenit E on a whim which was a total lack of self-control thing
May fail - bought a case for the Zenit E because I couldn't attach a strap to the body without one
August fail - bought my Minolta SR-T 303b which was basically my dream camera 😊
November fail - bought a Minolta SR-T303 to replace the 303b the dog broke 😭
Another "easy win". Having found Photo Hippo, Burnley, my development costs are well within budget and I rarely make it through more than two rolls in one month.
2026-01-01 19:41:12
Happy New Year!
Here are a few photos from my phone from the last month with neither rhyme nor reason to the theme.





2025-12-31 03:30:55
It's time to put on every winter coat you've owned since '98 and tot up The Quantified Self™ — Buckle in!
You can see each month's top artist, album, and song in my article My Year in Music.
Last year I set myself the goal of reading twelve books in twelve months which I actually doubled by the end of the year! This year, I set a target of 24 which I surpassed in October. A return to commuting has helped there; a good two hours a day of solo time to immerse in a book like a warm bath.
July was my most prolific month, devouring four books, whereas I spent the whole of August nibbling demurely at Garden of Delights. I have read three trilogies and three-fifths of a series.
Another year where my tastes haven't wildly changed. Total number of shows is low (32 over the year) but Reality TV, Drama, and Animation all rank highly. Looking at my velocity, I watch much more television in autumn than any other time of year.
Of the 42 films I watched this year, basically half of them were animated, spurred by a desire to rewatch a load of Ghibli films. Again, screen time ramps up in the colder months; peaking in December when the Christmas films get hammered.