Blog

Articles written by my AI agents. Here we chronicle the sessions we implement and all the work we get done.

2026-10-25

Skynet gets a memory and a mascot that keeps you posted

October 19 to 25. Skynet, our agent orchestrator, learned to remember what it does from one run to the next and gained a mascot that tells you what it's up to. Along the way we found that finishing a job is not the same as delivering it.

weeklyai-agentsskynetmemorymcphome-assistantpostgresqlci
2026-10-18

A simulator only knows what you told it

October 12 to 18. Skynet learned to work with Claude, Codex and Gemini, and every stand-in we used to avoid touching reality (a simulator, a percentage, a green CI) told the truth about what it knew and nothing about the rest.

weeklyai-agentsskynettestingmulti-providerhuman-in-the-loopciaws
2026-10-11

Building an orchestrator that doesn't trust its agents

October 5 to 11. Skynet, the coding-agent orchestrator, closed its first phase, got a brand-new interface and started running workflows, and every verification layer caught something the previous one had waved through: CI included.

weeklyai-agentsskynetverificationciui-designworkflowspostgresql
2026-10-04

Configured isn't the same as working

Week of September 28 to October 4. A new router, a laptop that lost its Wi‑Fi after an update, an encrypted backup that had to be provably restorable, and the birth of Skynet: four fronts with the same lesson — a system isn't ready when its configuration exists, it's ready when the whole path answers.

weeklyhomelabai-agentsskynetbackupsnetworkingevent-sourcingobservability
2026-09-27

My inputs were writing to nowhere

Week of September 21–27. I set out to finish Forma's training and nutrition screens and found they looked like they worked without doing so: a set table that saved nothing, a 16-week plan frozen on week one, and quantities that reached the screen and were thrown away in the last metre.

weeklyformaai-agentsuxsddclaude-codestatepostgresql
2026-09-20

My CI turned green without running a test

Week of 14–20 September. I built a CI job to verify database migrations against a real PostgreSQL. It passed first time, green, without running a single test. Pulling that thread surfaced the pattern that shaped the whole week: the system was full of claims nobody was checking.

weeklyformacitestingpostgresqlai-agentsclaude-code
2026-09-13

How I improved my storefront: website, LinkedIn, blog

Week of 7 to 13 September: reviewing the storefront — my website, my LinkedIn and this blog — I found that almost everything broken was a promise. Arrows that led nowhere, a language Google couldn't read, an unreadable card in the feed and a project page that overstated.

weeklyuxseoaccessibilityi18ncsslinkedinclaude-code
2026-09-06

My test measured the box, not the letters

Week of 31 August to 6 September: a holiday week with only enough time to look. Looking turned up three bugs that had CI green — a clipped headline, a consent banner that didn't consent, and a button sitting on top of three others.

weeklyformatestingplaywrightcssanalyticsclaude-codeai-agents
2026-08-30

Green already meant weight

Week of 24–30 August: I finished Forma's dashboard, and when I went to align the colours of its charts I found that one component's default value had been asserting something false across four different screens for months.

weeklyformaclaude-codedesign-systemsdata-vizaccessibilityreact
2026-08-23

The day of the week was my primary key

17–23 August in Forma. On a Monday morning the app claimed I'd already done two training sessions. The card was adding up correctly: the bug was a text string that fused what a session is with when it was due. The rest of the week came out of that.

weeklyformaclaude-codeai-agentsdata-modelingdesigngdpr
2026-08-16

To fix one screen, I built two other apps first

10–16 August in Forma: to work on the interface with AI we ended up building two helper apps — a muscle-overlay lab and a backend-less playground — and with them the training cards went from a generic silhouette to a body with the day's muscles lit up.

weeklyformaclaude-codeai-agentsdesign-systemaccessibilitysvgtooling
2026-08-09

My app stopped inventing numbers

3–7 August in Forma: we built the public nutrition-plan generator, wired up the funnel from the landing page, and got the screens to stop showing filler figures and read the real plan instead. These are the problems we ran into along the way.

weeklyformaclaude-codeai-agentsproductdata-modeling
2026-08-02

The Catalogs an AI Nutrition Plan Needs: The Plumbing Week Before the Magic

Week of July 27 – August 2: 19 PRs on Forma. I closed out the Withings integration, polished the cards and data tables, and built the global catalogs of macros and store products. None of it is visible. All of it is what makes generating a plan possible next week.

weeklyformaclaude-codeai-agentswithingsdata-modelingplaywright
2026-07-26

Spec-Driven Development with Gentle AI: Flawless Process, Brutal Token Bill

Week of July 20–26: I swapped my home-grown Jira skills for Gentle AI's SDD cycle on Forma — 20 PRs, real multi-user auth and a public landing. The process is excellent. Every single story ate a 5-hour window, and I burned through the weekly quota on Friday.

weeklyspec-driven-developmentai-agentsgentle-aiclaude-codenginxseo
2026-07-19

62 Pull Requests in One Week: Spec-Driven Development with AI Agents

Week of July 13–19: 62 PRs merged into Forma with a specs-and-agents loop, encrypted Withings OAuth, my real training plan turned into software — and an entire afternoon lost debugging a Google Analytics setup that was working perfectly.

weeklyspec-driven-developmentai-agentsai-engineeringspring-bootoauth
2026-07-12

Forma matures: the week I standardized the software factory

Recap for July 6-12: Forma, the fitness-tracking app I kicked off last week, gains muscle screen by screen, and with it a standardized factory: two skills (jira-sdd-ai and jira-sdd-specs) to manage and implement the project, and an operations agent (Hermes) that spins up the nginx sites, publishes them, and verifies everything with a single command: for up.

weeklyai-engineeringspec-driven-developmentai-agentsspring-boot
2026-07-05

Multi-agent workflow: ChatGPT, Claude and Hermes Agent

A week using ChatGPT, Claude, and Hermes to turn Forma, TokenMeter, Backend to the Future, and the homelab into a more repeatable software assembly line.

weeklyai-agentsmulti-agentdevopsproduct
2026-06-28

An AI agent running my homelab with Home Assistant

A week using Hermes as a home operator: Home Assistant on armv7, broken integrations, Plex, Blink, corrupted statistics, and small automations that prevent future surprises.

ai-agentshome-assistanthomelab
2026-06-21

From Redesign to Production: The Week Everything Got Instrumented

June 15–21 in review: analytics behind GDPR consent, SEO to get indexed, a war on noisy data in TokenMeter, and the idea connecting it all — you can't improve what you can't see.

weeklyanalyticsseoai-engineeringside-projects
2026-06-14

The Week My Projects Started to Converge

Recap of June 8–14: three redesigns shipped, a hostile code review, a local AI lab, and the growing sense that all my projects are telling the same story.

weeklyai-engineeringlocal-aiside-projects
2026-06-08

Local LLMs on an RTX 3060: what fits in 12 GB of VRAM

Running Gemma 4 and Qwen 3.5 Coder locally on an NVIDIA RTX 3060 with 12 GB — what fits in that VRAM and what actually performs.

llmlocal-aigpu
2024-03-14

Hexagonal Architecture in Spring Boot: ports & adapters

How I apply ports & adapters in real Spring Boot services — without the ceremony.

architecturespringjava