Neil Blakey-Milner

Weeknotes: 2025-W24

Published: , updated:


Summary

Finished up second mobile base for the garage workshop, and switched focus to my weeknotes backlog, writing tools to automate the photo management process.

Did a bunch of classes at Seattle Makers, doing some soldering, Arduino coding, and some slightly more advanced robotics coding.

Photos

(Based more on time of processing than time of taking…)

Little bug from soldering practice


White meadowsweets first blooming


Sea hollies showing off

Enjoying

Newly discovered

osxphotos

After a few weeks building up steam on the garage workshop, I’ve decided to take a short break to get back to my weeknotes backlog, and this time by building tools to automate it.

I started with some AppleScript to get stuff out of Photos, but ultimately this ran into some pain and lack of APIs - and osxphotos seems built exactly for my needs.


Ballard (and Neagley)

BALLARD - Official Trailer | Prime Video | July 9 - Prime Video

I somehow didn’t know Ballard has been talked about for a while now, and then this trailer arrives just as I’m starting my first Bosch: Legacy watch. Also, didn’t know about Neagley, which just finished filming.

Ballard has some Ballard-specific books to source from that I’m looking forward to, while Neagley doesn’t have as much exploration in the Reacher books (admittedly, I stopped reading them once authorship changed and the “good enough” quality dropped off), and there might be some interesting ideas from the writing team without having to try to remain close to canon.

Highlights

Simple code significantly outperforms complex code in agentic contexts. I just recently wrote about ugly code and I think in the context of agents this is worth re-reading. Have the agent do “the dumbest possible thing that will work”.

  • Prefer functions with clear, descriptive and longer than usual function names over classes.
  • Avoid inheritance and overly clever hacks.
  • Use plain SQL. I mean it. You get excellent SQL out of agents and they can match the SQL they write with the SQL logs. That beats them min-maxing your ORM’s capabilities and getting lost in the SQL output in a log.
  • Keep important checks local. You really want to make sure that permission checks are very clear to the AI, and that they are taking place where it AI can see it. Hiding permission checks in another file or some config file will amost guarantee you that the AI will forget to add permission checks in when adding new routes.

– “Agentic Coding Recommendations” by Armin Ronacher

What’s great is that this is basically what is good for humans to understand and modify code as well. One potential future is having these systems creating code that’s so byzantine that no human can reasonably understand it quickly - let’s hope that doesn’t come to pass.

Armin also has a YouTube example of his approach:

Claude Code Fixes Two MiniJinja Issues - Armin Ronacher


I’d like to say I have a systematic process I apply here. I don’t. I think over one idea, then another, writing down my thoughts, but it’s always hard to feel like you’re making a lot of progress. It’s honestly frustrating. I often wish I could “systematize” it somehow, applying some rigorous method and march towards the solution. Could I become one of those magic people who just sit down in front of a problem and watch it decompose in front of them?

Over time I’ve accepted that is impossible. There is no person, no process, which can systematize thought.

– “Reflections on Sudoku, Or the Impossibility of Systematizing Thought” by Russell Power

I find this (and its exploration in the rest of the article) an interesting insight, and I can recall points in my career where I (or others) seemed to think there was one correct process, which never succeeded particularly well.

Fixing The Power Feed On My Shaper - Blondihacks

Fixing The Power Feed On My Shaper - Blondihacks

Watching competent problem solving on issues with machines remains satisfying.


The Sudoku Where NO Domino Sums To 5! - Cracking The Cryptic

The Sudoku Where NO Domino Sums To 5! - Cracking The Cryptic

Relatively short and sweet, and a fun application of the “full XV” ruleset (which I’ve found I rather enjoy while playing puzzles myself).