All Posts

Two Days, One App, Zero Experience

4 min read

I set my stepson up with Claude Code on a Thursday evening. He'd never used it before. He didn't know any of the techniques I'd spent the past year learning. He just told Claude what he wanted and refined it as he went. By Saturday morning, he had a feature-complete iOS app ready to sideload onto his phone.

I've spent the past year developing workflows, studying prompt engineering for agentic systems, rebuilding apps multiple times to figure out what works. And here was a teenager with zero experience building a polished mobile app in less than two days through pure vibe coding.

This isn't just about experienced builders getting faster. The tools got good enough that experience stopped being the bottleneck.

Accelerated Development

I started my own iOS app the week before. Requirements, architecture, documentation research — and after scattered evening sessions around a full-time job, I had a native Swift app running on my phone. It needed polish. A sticky header overlapping content, small issues you only catch by using the app. But the core was solid and nearly ready for the App Store.

My stepson's two-day build inspired me to keep going. I'd spent months rebuilding ChromaCal as a web app — four complete rebuilds in 2025. I decided to port it to iOS. I pointed Claude at the existing web codebase, my newly built app as an architectural reference, and a high-level project summary. I more or less one-shotted it. The result needed fixes — views not rendering quite right, navigation needing smoothing — but the gap between what Claude produced and where I wanted the app to be was narrow.

That same week, I built two themed variants of my original app. Four iOS apps total, all from part-time evening work.

Around the same time, a family member who'd been building his startup idea with ChatGPT — copying and pasting code into basic HTML files — switched to Claude Code. Within a week, he had a professional-looking application.

A teenager, an experienced developer, and a non-technical founder — all building functional apps in days. A year ago, none of this was possible. Six months ago, it was possible but painful. Now it's straightforward.

What Changed

The models got dramatically better. Opus 4.5 and now 4.6 made a huge difference in code quality and architectural coherence. Sonnet 4.6 is roughly equivalent to Opus 4.5, which means even the mid-tier model produces strong results. A year ago, AI-generated code would frequently spiral into debugging loops where the AI would break something when fixing something else. That barely happens now.

Claude Code improved its orchestration. It now delegates work to sub-agents to preserve the main agent's context window. The orchestrator pattern — where the primary agent plans and coordinates while sub-agents handle implementation — means tasks can be parallelized across multiple agents at once. Larger, more complex builds complete without losing coherence halfway through.

You don't need to look at the code anymore. As a developer, I still dig into the code to understand how things are set up, especially around payment processing or sensitive data handling. But for the most part, you can direct AI agents at a higher level of abstraction and get working software back. My stepson never looked at a line of Swift. He didn't need to.

What AI Still Can't Do

The biggest gap is end-to-end testing from a user's perspective. AI can take screenshots of the iOS simulator and evaluate static states. It can't watch you scroll through the app and notice that a header is overlapping content, that a transition between screens feels sluggish, or that the tap target on a button is slightly too small.

Automated testing catches functional issues. A human eye catches experiential ones. That's the gap right now, and I don't see it closing until AI agents can process real-time video feeds of app interactions rather than just screenshots.

The other gap is taste. Claude produces clean, functional UIs. But "clean and functional" isn't the same as "delightful." The difference between an app that works and an app people love to use still requires a human with opinions about spacing, color weight, animation timing, and the dozens of micro-decisions that make software feel crafted rather than generated.

For anything going to the App Store, there's a third gap: code quality. I run review passes my stepson skipped — reviewing architecture, running security checks, having a second agent critique the first one's work. AI can produce code that works but isn't always architecturally sound, and that can catch up with you when you try to change things later.

What This Means

The cost of building software is approaching zero. That's exciting and unnerving.

It's exciting because the barrier between "I have an idea" and "I have a working app on my phone" has never been lower. Ideas that would have required hiring a development team or spending months learning to code can now be prototyped in a weekend. If you've been sitting on a project, there's no better time to start.

It's unnerving because when anyone can build software, the software itself stops being the moat. The value shifts to distribution, branding, taste, and the network effects that keep users coming back. A competitor can clone your app's functionality in a weekend. They can't clone your audience, your reputation, or what you've learned from real users.

I'm still finding things to polish and interactions to smooth out. The last 10% takes longer than the first 90%, and I believe it's the part that separates software people actually use from software that just demos well.

But the first 90%? That's the part that used to take months. Now it takes days. And the tools are still getting faster.