I built an iOS app with AI and zero coding experience. Here are 7 things nobody warned me about.

by•

I come from corporate finance. Before starting my app, I had basically zero coding experience.

Fast forward to today, and I've managed to build and launch an actual iOS app using AI-assisted coding.

I'm still learning every day, but there are some things I've realized that I rarely see people talking about when discussing vibe coding.

1. AI can build something you don't understand. And that's dangerous.

Getting code to work and understanding WHY it works are completely different things. Eventually something breaks, and if you don't understand the underlying logic, you're basically asking AI to fix a problem neither of you fully understands.

2. Your biggest problems aren't always in the code.

Authentication, databases, privacy, App Store requirements, subscriptions, API costs, user onboarding. I went in thinking building the interface would be the challenge. Turns out that's just one piece of the puzzle.

3. A feature working once doesn't mean it works.

What happens when someone loses internet halfway through? Closes the app? Signs out? Comes back three weeks later? Uses an older device?

AI can help build the happy path pretty quickly. The weird situations people don't think about are where things get interesting.

4. AI makes it ridiculously easy to overbuild.

This one got me lol.

You think of a feature, realize AI can help build it, and suddenly you've spent days adding something nobody has even asked for.

Just because you CAN build something doesn't mean you should.

5. Your prompts eventually become a form of engineering.

I learned that saying "fix this" is very different from explaining what should happen, what shouldn't change, and how the feature interacts with everything else.

The better I got at explaining problems, the better the results became.

6. Every feature has a cost beyond development.

Third-party APIs, hosting, maintenance, testing, support, and even the time it takes to explain a feature to users.

AI can make something cheap to create without making it cheap to operate.

7. Shipping an app doesn't mean you've built a business.

This has probably been my biggest reality check.

You can spend months building something, finally get it into the App Store, and realize the hardest part is still ahead of you.

Getting people to discover it, try it, understand it, and actually come back.

I don't regret learning this way at all. AI gave someone like me the opportunity to build something I genuinely wouldn't have known how to approach a year ago.

But I think there's a big difference between using AI to avoid learning and using AI as a way to learn.

I'm curious, especially from experienced developers and other AI-assisted builders:

What's one thing about building software that you think new vibe coders won't realize until it's too late?

14 views

Add a comment

Replies

Best

that every session starts from zero.. the agent won't remember what it decided yesterday, so i keep a handoff file it only ever appends to, top twenty lines are where things stand, and it commits after every step so there's always something to go back to. did you end up with something like that or do you re-explain each time?

A new backend can break the version still installed on someone's phone. Keep the last public app build on a test device and run its main flow against the new backend before removing or renaming a field it reads.

The agent reported the checkout flow was verified, but it had wrapped the failing handler in an empty try-catch block to clear the error. A bug does not kill trust. Reporting that everything is fine because it silenced the crash does.

Same here, I came from business operations, not code, and #5 is the one I'd underline.

What I didn't realize until much later: the words don't stay in the chat. Something I meant for once can get saved as something for always. If I say "this time, let's do it this way," it can get saved as "always do it this way," with no date and no reason, and every new session keeps following it.

So now I keep a record of what was decided and why, written as descriptions, in files I can open and read myself.

It has also taught me that even though I don't code, the core of the process and its foundation are still something I can be good at. Building a tool for AI with Claude Code, I've come to understand the AI side even better, and how to give a clear explanation while preserving the AI itself and keeping it unimpacted.

And #7, very much where I am now.

Number 3 is the one I'd underline. Nobody can review every line anymore, so I lean on end to end tests instead. One of my apps has about 150 Playwright specs that click through the real screens. And before anything gets reported as done, the agent has to check it on the actual page, not just trust a passing test.