I built a native iOS app with AI, and it was a f*cking nightmare.
I built a native iOS application using AI – and it was an absolute disaster. But before we get into the nitty-gritty of why this entire ordeal had me flipping tables and questioning my life choices...
Alright, let’s get straight into it. I built a native iOS application using AI – and it was an absolute disaster. But before we get into the nitty-gritty of why this entire ordeal had me flipping tables and questioning my life choices, let’s address the elephant in the room. People are out here screaming from their rooftops that AI is going to replace developers. I’m here to tell you that’s bullshit. If anything, AI has made it crystal clear that senior developers are safe, junior developers are on the chopping block, and everyone else better buckle up because it’s a bumpy ride.
The Problem That Started It All
Picture this. My car needed some work – recall situation. I go to get a loaner, and the guy asks for my insurance. No problem, right? Wrong. I left my wallet at home. Thankfully, I knew I had a photo of my insurance card somewhere in the abyss that is my camera roll. I started scrolling, searching, and swiping like a maniac until I finally found it. That’s when it hit me – this is a god-awful way to organize important documents.
So I had this genius idea: what if I made an app where I could just take photos of my documents, organize them neatly, and have them instantly accessible? Maybe even import PDFs or sync it all across my devices. Boom – idea born. And because I’m a masochist, I decided to build it as a completely native iOS app. Oh, and let’s let AI do all the heavy lifting. What could go wrong?
The First Attempt: Show Me Your Papers (Horrible Name, I Know)
I fire up Xcode, start a new project, and name it "Show Me Your Papers" – a name so bad, I’m embarrassed to even type it. Then I open Cursor, my AI co-buddy, and feed it a list of requirements. I tell Cursor what I want the app to do, and it starts generating files and writing code like it’s auditioning for "America’s Got Talent."
Here’s how it went:
- Cursor writes some code.
- I run the app.
- Errors. Copy errors. Paste errors into Cursor.
- Repeat.
I quickly realized I wasn’t a developer anymore – I was an orchestrator. The AI was my chaotic little intern, and I was its stressed-out manager. At first, it was magical. I even went on LinkedIn to preach about how this was the future of development. But then I hit a wall. I needed data to sync across devices, and Cursor decided to use Core Data – Apple’s clunky, outdated data storage framework. Migrating to Swift Data (the newer, better option) turned the entire project into a flaming dumpster fire. After two days of fighting errors, I flipped my desk and walked away.
Attempt Two: The Pink Binder Disaster
Determined to make this work, I started fresh. This time, I renamed the app "Pink Binder," inspired by a friend who kept her parents’ important documents in a literal pink binder. The name felt right, and I thought maybe a clean slate would solve all my problems.
I asked Cursor to generate a massive document with all the app’s requirements, features, and data models. Then I fed it back into Cursor and told it to build the app. It started cranking out files and creating a directory structure that actually looked decent. I thought, "Alright, maybe this time it’ll work."
Spoiler: It didn’t.
For three straight days, I played the same game. Run the app. Errors. Copy. Paste. Fix. Repeat. Three. Damn. Days. The app never ran on my device. Not once. By the end, I was so furious I almost threw my MacBook out the window.
The Final Attempt: Paper Keeper
By now, I was battle-hardened and ready for war. I started over again, this time with a clearer plan. The app was now called "Paper Keeper," and I approached it differently. Instead of letting Cursor run wild, I took control. I defined all the features, laid out the directory structure, and even created stub files with comments explaining what each part of the app was supposed to do. Then I let Cursor build small pieces, one step at a time.
This process was tedious as hell. I had to babysit the AI, correct its mistakes, and constantly remind it to stay within the lines. But it worked. After weeks of pain and suffering, I finally had a working app. Paper Keeper was alive, and it was actually pretty awesome.
What I Learned
Here’s the cold, hard truth: AI isn’t ready to replace developers. Not even close. It’s a tool, and if you don’t know how to use it, it’ll burn you. AI can replace junior developers because it’s great at handling repetitive, straightforward tasks. But here’s the problem – where do senior developers come from? They start as juniors. If we cut off that pipeline, we’re screwed in the long run.
For now, AI is a powerful assistant. It can help you build faster and make your life easier, but it’s not a magic wand. If you’re not a developer and think AI will let you build a killer app solo, good luck. You’ll either end up with a half-baked app or a full-blown mental breakdown.
How to Use Get It
Paper Keeper is live and ready for action. It’s an iOS app that keeps your important documents organized, secure, and instantly accessible. If you’re tired of digging through your camera roll for insurance cards or warranty PDFs, check it out at paperkeeper.app or install it from the AppStore
As for AI? Use it. Embrace it. But don’t let it fool you into thinking it’s the second coming of developer Jesus. We’re not there yet – and we probably won’t be for a while.