All posts

Being the human in the loop

Aaron Drysdale

October 30, 2026 · 7 min read

I'm coding again, and I'm loving it.
I've always found development a creative process. You start with nothing, build something, and get to show it to other people. What frustrated me in the past was how long it took to do simple things. Coding with AI, it feels like I've sped that up a thousandfold. Within hours or days I have something to show people, and sometimes the result blows me away.

Two decades of almost-finished websites

I've had an on-again, off-again love affair with web development for a long time. One of my early jobs, in the early 2000s, was working on a back office system for a company that supplied software and hardware to convenience stores in New Zealand and the southern Asia Pacific region. It ran on the web technology of the day: ASP, ASP.NET, ADO, COM, IIS and SQL Server.
I built my first personal website in 2001, when my youngest daughter was born. I remember sitting in the spare room coding while she lay on a blanket next to me. I hosted it on my own PC at home, with dynamic DNS to make it reachable, and it had a login so only family could see her photos. Back then I didn't feel comfortable sharing pictures of her with just anyone. Oh, how times have changed!
I spent weeks, if not months, on the simplest things. Not just doing them, but figuring out how to do them: reading documentation and debugging errors.
Since then I've tried to rebuild my website more times than I can count. Each time I'd be enthusiastic for a few weeks, maybe a month or two, then lose interest because it took so long to get a real result. Even so, those bursts were some of my most creative times. I've always been a lifelong learner, and each attempt was an excuse to learn the latest technology.

Where I learnt the new way

Just before I started this version of the site in April 2026, I'd been watching a lot of videos and reading articles about developing in this new world of AI. The one that stuck was The Complete Agentic RAG Build, a YouTube series by The AI Automators on building your own RAG system. I followed along because it was long-form and hands-on, and it gave me the foundational knowledge I've built on since, including this website. It also taught me a lot about using Cursor and the Claude Code CLI on my own projects, and how to use markdown files and planning mode (which I've since abandoned) to direct your AI coding agent of choice.
Around the same time I found Daniel Wirtz's website. It gave me the idea of using Notion as a CMS backend, and it was a lesson in keeping a site clean and simple. That was the big takeaway for me: focus on some content, any content, rather than trying to build so many things that I never finish.
One other source shaped how I work now. Brian Casel's YouTube channel helped me understand the workflow and process you put around AI, in particular spec-driven development. For anyone that reads this close to the date of publication, watch one of his recent videos on I stopped using plan mode. Although I'd started working this way a while ago, I think Brian's video nicely captures what I've found to be the ideal workflow at this time.

What 'human in the loop' really means

When I started, I assumed AI development still meant me doing the bulk of the coding, with AI helping on complex algorithms and basic infrastructure. I had it backwards.
I've realised that "human in the loop" really means me writing briefs and PRDs, reviewing artifacts and plans, and steering, while the AI does the heavy lifting. My job is to be clear about what I want and what good looks like. Its job is to build it and prove that it works.

My workflow, start to finish

Here's the process I follow for each change to the site.
  1. Mock it up in Pen.dev. Pen.dev (formerly Pencil) is another AI tool I've fallen in love with. It makes me more creative, and the output looks so good. I design the page first so I know what I'm aiming for. More on that below.
  1. Write a PRD. I use the design to write a product requirements document. The AI does most of the writing; I provide guidance and review it. Each requirement in the PRD includes a description of how it will be verified.
  1. Plan. The AI turns the PRD into a development plan, which I review before anything gets built.
  1. Build and verify. The AI is amazing at test-driven development. I make sure everything it does has a way to be verified, so it writes the tests, builds the feature and proves it works.
Each step has its own skill on my machine: write-prd, write-plan and build. They keep the AI on track and tell it what good looks like, so I'm not repeating myself every session.
What I love most is how quick it is to iterate. Writing the brief and PRD gets meaningful work done fast, but I'm not afraid to leave things out. I know it's easy to add them later.

A designer at hand

After that first burst in April, I took a break from the website for several months. When I came back to it in October, I'd just spent time on a different project using Pen.dev. That gave me the idea to revamp my first website design, this time by mocking up the whole site in Pen.dev before touching any code.
Pen.dev is one of a new breed of infinite-canvas, agentic AI design tools. You lay out screens on an open canvas and work with an AI agent to design them. For a developer like me, it's like having a designer at hand. Pen.dev includes design skills that elevate the design results. I've also learnt that I can ask it to create a design system and color tokens that ensure the PRD and plan stay consistent with the design across multiple iterations.
The other big benefit is that Pen.dev saves its designs as JSON. My .pen files sit in the repo alongside the code and are versioned with it, so the design and the code it describes stay together.
notion image
My website mock-ups in Pen.dev: mobile and desktop screens in light and dark mode.

Beyond the code

The speed-up isn't limited to writing code. AI has accelerated the other IT work around the site too:
  • running local test harnesses
  • verifying the site with Playwright
  • setting up GitHub Actions for CI/CD
  • creating the AWS infrastructure to host the website
Jobs that once took me days of reading documentation are now part of the same flow.

Why Claude

I prefer Claude. It's what I started with, and it consistently gets results, so I keep using it. I use ChatGPT for general questions and conversations, although I'm finding myself moving more of those to Claude as well.
Twenty-five years after that spare-room website, the joy is the same: creating something from nothing and showing it to people. The difference is that now I get to finish it.

Stay in the loop

Get new posts delivered to your inbox. No spam, unsubscribe anytime.