I hadn’t written code in 15 years.
That’s not an exaggeration.
My background is in software development, but I was never a strong programmer. I was a front-end developer in the era when cross-browser compatibility was the hard part. HTML, CSS, JavaScript. Master plumber work, not engineering.
Then Indy Hall took off, I went deeper into business, and my programming skills atrophied even further.
I could build a landing page with Tailwind. That was the extent of it.
The Cursor phase
Around early 2025 I picked up Cursor. I used it to build some internal tools for Indy Hall - data plumbing stuff I would have previously done with Zapier or hired a freelancer for.
It was the first time I’d been at the intersection of knowing how systems work and actually being able to build them myself.
I always had the architecture and systems design skills from 20 years of working alongside talented engineers. What I never had was the ability to execute without puppeteering someone else’s hands.
Cursor gave me that. The range of things I could do myself exploded.
The switch to Claude Code
Then I started seeing people pick up Claude Code, around August 2025.
Brian Castle’s YouTube channel, where he focuses on software craftsmanship and Claude Code, was the thing that tipped me over. One video on the basics and I was done with Cursor.
I started using it the same way - coding, data plumbing.
But then I had a moment.
What other systems could I build that aren’t necessarily software?
That question changed everything.
The box I always wanted
I’ve always had this dream of one box where I can drop anything - a link, a quote, a random thought that pops into my head. For almost 20 years I’ve taken notes of those random thoughts, then reviewed them once a month looking for patterns.
But bookmarking never worked for me. I’m convinced it doesn’t work for most people. It’s a junk drawer. Stuff goes in.
Same with Notion, project management tools, to-do lists. They all require too much thinking just to put a thing in, and then you have to remember where everything is on top of that.
That’s what software should do.
So I tried something. I dropped a link into Claude Code with no other instructions and told it to figure out what to do. Go fetch the content, read it, figure out the context, generate an actual note, file it in the correct place. If it didn’t know where to file it, suggest options I could approve.
All it really was, was an SOP.
Instructions. If the link is from a major news source, handle it this way. If it’s a YouTube video, handle it this way. If it’s a podcast, go get the transcript and process it.
In about 20 minutes, this thing I’d been dreaming about for most of my life had a working version.
That was the lightning bolt. I think this thing can do a lot more than write code.
Building the system with itself
The first month I worked entirely in a terminal. Managing my inbox, planning events, running calendars. Like an old-school Unix guy, except I’m not really a Unix guy.
When I needed mobile access, I discovered that Claude Code’s CLI has a headless mode.
Pass in a string, get back a response and a session UUID. Use that UUID to resume the session. That’s the whole loop.
I wrapped it in a React web app, set it up as a PWA, and put it on a Hetzner VPS behind Tailscale so I could access it securely from any device.
Then I started using the system to build the system. That’s where my brain broke.
Open the chat on my phone, type “put a button here and make it do this thing,” wait a few seconds, hard refresh, and the button is there and it works.
What it actually does
The system manages my email inbox - not by writing emails for me, but by classifying what’s there and taking action on routine items.
Third-party notifications that require an action in another system? It reads the email, does the action, archives the email, and labels it so I know it was handled.
When my inbox gets out of control, it can sort by easiest-to-hardest instead of chronologically. I’ve never seen a tool do that. I can rip through the easy ones and save the hard ones for when I have the energy.
It monitors the Wi-Fi network at Indy Hall every 15 minutes, checking load, memory, retries on individual access points.
It follows my branching SOP to fix common problems proactively. One time it caught a dead fan causing the router to overheat - a diagnosis I would have missed entirely because the symptoms pointed somewhere else.
It took my 4-hour weekly newsletter process down to about 30 minutes.
Not by writing the content. It collates events from multiple calendar systems, manages a database of descriptions and partner info, and generates the scaffolding. I still write every word. But I don’t have to figure out what goes into it, which was honestly the most time-consuming part.
It tracks relationship intervals - reminding me when it’s been too long since a dinner with friends, suggesting restaurants, and recommending wines from my collection to bring to BYO spots.
The real shift
The cost of trying something rounds to zero now, both in time and money.
The number of things I’ll dedicate 15 minutes to exploring, where before I would look at it and think “not even worth starting,” has changed completely.
Why would I tolerate a problem if in 15 minutes it can be gone?
Some of these are problems that have existed the entire 20-year history of Indy Hall. Not reduced, not managed. Eliminated.
I’m running all of this on a $200/month Claude Code plan.
There was one Thanksgiving week where I spent $1,500 in API overages because I was in heavy build mode, but as a business owner, the ROI is measurable. I’ve spent more than that on a month of part-time VA work that gave me far less.
What I want people to take from this
These tools aren’t coding tools that happen to do other things. They’re system generators that happen to speak code.
The interview-driven design process, where I tell it my end goal and have it ask me questions until it has high confidence in what I want, has designed everything I’ve built.
It’s the fastest requirements-gathering process I’ve found because you just answer questions.
And the compounding effects of working together over months has made each subsequent version closer to what I expect on the first try. That compounding is something I’ve never experienced before.
I’m not sharing this because the tools are cool. I’m sharing it because anyone doing impactful work should have access to this kind of leverage. The barrier isn’t technical skill. It’s knowing that code is just one language this tool speaks.