I wish I never opened Pandora’s box of agentic coding. If I could reset the universe and remove all traces of LLM chat bots and coding agents as though they never existed, I would do it in a heartbeat.
Gamedev, graphics, open source. Shuffling bytes and swizzling vectors since 2004...
I wish I never opened Pandora’s box of agentic coding. If I could reset the universe and remove all traces of LLM chat bots and coding agents as though they never existed, I would do it in a heartbeat.
It started with the “don’t get left behind” brigade, somehow they managed to convince me that I was now missing out on developing critical new skills. People who hadn’t put in the hours to learn to code in the first place were now at the top of the field and leaving the rest of us behind, who have put in multiple decades and tens of thousands of hours of effort to learn our craft. They want their PR’s merged upstream to get credit on GitHub for code they didn’t write or even understand, flooding the pull request system to breaking point. I tried to ignore it but the chatter was incessant and I had to take a look for myself.
28 January 2026
I recently decided to port my music app ‘diig’ to Android since I had some requests from friends and other potential Android users. The app was originally designed and built for iOS using all of my own code and no external frameworks. The whole thing took around 2 weeks to port, not full days work but just a few hours here and there. 2 weeks to port an entire app, 99% feature parity with iOS.
It’s Halloween and I have just been caught out by a spooky borrow checker error that caught me by surprise. It feels as though it is the single most time consuming issue to fix and always seems to catch me unaware. The issue in particular is “cannot borrow x immutably as it is already borrowed mutably” - it manifests itself in different ways under different circumstances, but I find myself hitting it often when refactoring. It happened again recently so I did some investigating and thought I would discuss it in more detail.
12 October 2025
diig is a music discovery app and the beginnings of a music platform that I started working on a few years ago. In that time I have been using the app myself, and so have a few friends, but I haven’t really announced much about it so I thought I would get some words down about the project. The name diig comes from the term crate digger which is given to record collectors who dig though vast quantities of records to find hidden gems.
04 March 2025
An ongoing source of frustration is maintaining continuous integration in open source hobby projects. It’s really useful to have continuous builds, automated tests and package delivery, but it comes with maintenance. Time will pass and the time will come where I want to tag a build in git and let all my lovely automated CI publish a package, or maybe work on a project I haven’t touched for a while and I want to run the tests, but for what feels like more often than not, the build fails for an unexpected reason.