From Directing Developers to Building with AI
Joe Hummel ·
My first useful AI project was a “coming soon” page.
It was July 2023, and we were preparing to launch a complete overhaul of our small company’s website. I used AI to help craft a temporary landing page. It gave us a way to announce the upcoming launch while clearing out the legacy site and getting the new infrastructure into place.
It was a modest task, but a useful introduction. I had something specific to accomplish, existing code to work from, and a result I could inspect. I was impressed by how familiar the process felt: establish the design and feature objectives, review the implementation, and revise as needed.
In November 2024, I returned to that same website for a different announcement: the company’s acquisition. AI helped me create an overlay to share the news.
Between those two projects, my use of AI was occasional and uneven. Some attempts saved time. Others turned into long exchanges where I struggled to explain what I needed—or persuade the tool that its answer wasn’t correct.
One of those exchanges has stayed with me.
When the confident answer was wrong
We had recently overhauled our streaming web application with newer versions of its underlying frameworks. As often happens with that kind of work, the upgrades left broken components and features to sort out.
We had also lost the key developer working on those changes. I still had outstanding issues with the application’s AWS Cognito integration, which handled user authentication.
I worked through the current AWS documentation until I understood what was broken. What I didn’t yet know was how to translate that understanding into a fix within our existing codebase. Starting something new can be much easier than untangling something that already exists.
I brought the problem to an AI agent.
It insisted on a different solution.
I was looking at the version 2 AWS Amplify documentation and pointing out the changes. The agent kept returning to an approach from version 1. Whatever information it was relying on, it wasn’t adapting to the version in front of me.
The difficult part was that its answers sounded plausible. If I hadn’t already worked through the documentation, I might have spent considerably more time following the wrong direction.
That experience helped clarify something for me: knowing enough to recognize a bad answer matters just as much as knowing how to ask a good question.
I needed help changing the code. That didn’t mean I could hand over responsibility for deciding whether the change made sense.
Bringing a different set of skills

During 2023 and 2024, I managed a small team of remote developers who helped us build customer-facing applications and overhaul the company website. I served as architect and project manager.
I often wanted to be the person writing the code. But my work required breadth across architecture, infrastructure, and delivery, leaving little time for the sustained practice that programming demands. Event production also made it difficult to protect the uninterrupted time needed to work through a complicated implementation.
Those responsibilities still involved a great deal of building. I had to understand the problem, describe the intended behavior, make decisions about how the pieces fit together, and evaluate what came back.
As I became more comfortable working with AI, I began recognizing how useful those same skills were.
Through 2025, I used it for increasingly complex development tasks. I got better at providing context, breaking work into smaller pieces, and using what I learned from one attempt to guide the next.
My prompting improved, but so did my understanding of the work I needed to do around the prompt.
The Cognito experience had shown me why that mattered. An answer could be clearly written and still be wrong for the application I was trying to maintain.
What I can build now
Looking at what I’ve accomplished over the last several months, I find myself revisiting some of those earlier projects.
How much of the implementation could I now tackle myself with AI assistance? Where would I still need an experienced developer? Which parts would move faster, and which would demand just as much care?
I haven’t repeated those projects with agents, so I can’t answer that confidently. But the range of work I’m willing to attempt has expanded.
There’s a parallel with my earlier experience using WordPress and its ecosystem of plugins. Those tools made it possible to build a useful website without writing every piece from scratch. Getting the result I actually wanted still required judgment about what to use, how to connect it, and when the standard solution wasn’t enough.
AI is lowering some of those barriers for me again.
I spend less time starting from a blank editor. More of my attention goes toward explaining the problem, reading the proposed code, checking behavior, and deciding what needs to change.
Writing code manually is becoming a smaller part of some tasks. Understanding the result remains essential.
The choices that give a project its character still need to come from somewhere, too. What should this do? Who is it for? What would make it worth using? A tool can help explore those questions, but I still have to decide what I want to build.
Learning in public
This website is one example of that process. I’ve used AI assistance to plan its structure, develop the pages, review my writing, and work through implementation details.
It has also given me a place to write about the experience.
I’d like these Notes to document the useful attempts and the frustrating ones: what I was trying to accomplish, where AI helped, where it led me astray, and how I checked the result.
Some will be about software and infrastructure. Others may explore how I use these tools to learn about financial planning, prepare questions about health or legal matters, or get another perspective on something I’ve written or created.
Those will be accounts of my own learning, including the limits I encounter and the places where outside expertise matters.
I’m still figuring out what this way of working makes possible. For now, it’s helping me return to familiar problems with new tools—and attempt projects I might previously have left on the shelf.
If sharing that process helps someone else try something new, these Notes will have served their purpose.