“Please review” can mean anything from “check the spelling” to “find the assumption that will leave twelve volunteers standing outside a locked building”. If we expect someone to approve AI-assisted work, we need to tell them what requires a decision and give them enough information to make it. That starts before the prompt. Who will […]
The ongoing conversation
Blog
Work, technology, games, books, and the things that catch my attention.
Zero, Unknown, and Not Applicable Deserve Different Answers
An empty attendance list can mean that nobody came or that nobody entered the attendance. A report that displays zero has chosen one of those explanations; it needs a reason. That distinction comes up in the reporting work for the Dayton Hash website. The pilot’s test cases distinguish confirmed empty attendance from unknown rosters and […]
Turn an AI Friction Log into Reusable Procedures
In Give Your AI Agent a Friction Log, I described recording unexpected failures and what actually resolved them. I’ve since added maintained procedures, helper scripts, and focused skills to that workflow. The next question is whether another task finds and uses them. A growing collection of instructions can also become a growing collection of instructions […]
Learning New Tools, One Goblin at a Time
Getting a sorceress into a board game involved learning Lua, baking textures in Blender, and explaining to an AI assistant that “Add one kill per Hero Stone” was an important distinction. I adapted Goblin Slayer, a board game by Rich Carlson and Iikka Keränen, for Tabletop Simulator. It gave me a concrete reason to learn […]
Upload Test: Passed. Upload: Failed.
A PDF preview loaded on a WordPress site I was working on, but the original PDF returned “access denied”. I had already worked on an upload-permission repair, and the tests had passed. The next uploads showed what my earlier tests had missed. The first repair addressed permissions in the upload folders. Existing files became readable, […]
A Useful Tool Doesn’t Always Need a Server
While prepping an orienteering trail, we needed to compare GPS track and photographs alongside an existing map that might be out of date with the current park trails. That was the delivery problem for the Grant Park review tool: put the material together so it could be examined, layers compared, and photos of interesting features […]
Who Pays for AI Progress
A data center can be a good investment for its owner and a bad deal for the people paying for the power lines. Before calling it progress, ask whether those are the same people, what each group gets, and who pays if the expected customers never arrive. A company forecasts demand.A utility plans construction.A community […]
A “Successful” Search That Found Nothing
A search in a job search application I’m developing reported success without finding any usable postings. The workers were running, the task had finished, and the application reported no error. Unfortunately, the user wants job postings, not reassurance about the workers. Finding nothing can be a perfectly valid result; the problem was that the application […]
You Don’t Have to Accept Every AI Code Review
On one of my pull requests for the Grand Comics Database project, Gemini Code Assist offered three suggestions: two warned about possible errors and the third suggested a clearer way to write a loop. I accepted the third and explained why I wasn’t making the other two changes. The warnings sounded reasonable, but they depended […]
Integrate the Calendar People Already Use
If a group already maintains a calendar, giving them a second place to enter the same events creates another burden. It also creates a question when the two versions disagree: which one should everyone believe? Old joke: a man with one watch always knows what time it is, but a man with two watches is […]