Back to Blog

What I Learned Spending a Year Building an App by Myself

The honest, unfiltered story of solo app development—the mistakes, the burnout, and the small victories

January 30, 2025
11 min read
Vishal V Shekkar

In January 2024, I started building Bonsai. I had no team, no investors, no safety net. Just a full-time job, a problem that annoyed me, and nights and weekends.

Twelve months later, Bonsai is on the App Store. People are using it. Some are even paying for it.

This is the story nobody tells you about building an app by yourself. Not the Instagram highlight reel—the real version.

The Problem That Wouldn't Leave Me Alone

December 2023. I'm at a family gathering, trying to take a video of my niece opening presents. My iPhone says: "Cannot Record Video. Not Enough Storage."

I have 256GB of storage. How am I out of space?

I spend the next hour deleting apps, old messages, clearing cache. I free up 8GB. Two weeks later, I'm out of space again.

I realize: It's the videos. They're enormous. But they're also precious. I can't just delete memories.

I start researching. Surely there's an app that can compress videos efficiently, on-device, with a good user experience?

There isn't. Or rather, there are a dozen apps that kind of do it, but they all suck in different ways:

  • Terrible UI
  • Cloud processing (privacy nightmare)
  • Require subscriptions for 3 videos
  • Use ancient codecs
  • Crash constantly

"Someone should build a good one," I thought.

Then I realized: I'm an iOS developer. I could be that someone.

Month 1: The Naive Enthusiasm Phase

I dove in. I'd built apps before for clients. How hard could it be to build one for myself?

Naive assumptions I made:

  • "I'll build the MVP in a month"
  • "I'll use all the latest SwiftUI features"
  • "I don't need to plan the architecture much"
  • "Marketing? I'll figure that out later"

Reality:

  • MVP took 4 months
  • SwiftUI had bugs I spent weeks working around
  • My architecture became spaghetti by month 2
  • Marketing is still the hardest part

But I didn't know any of this yet. I was excited. I spent every evening and weekend coding. My wife thought I'd lost my mind.

Month 2: The First Major Setback

I built a prototype. It could compress videos. It worked!

Then I tested it on a 4K video.

It crashed.

I tried again. Crashed.

Different video. Crashed.

I spent two weeks debugging. Turns out, iOS has memory limits for processing video, and they're not well documented. Large 4K videos couldn't be processed the way I was doing it.

I had to learn about video chunking, streaming compression, memory management at a level I'd never dealt with before.

Time spent on this: 3 weeks Lines of code I threw away: ~800 Times I wanted to quit: Daily

This was the first time I understood: Building an app for yourself means there's nobody to brainstorm with when you're stuck. No team to back you up. Just you, StackOverflow, and increasingly desperate Google searches.

Month 3: The Scope Creep Disaster

By March, I had basic compression working. But I kept thinking: "What if I added...?"

Features I added that nobody asked for:

  • Complex filtering system
  • Detailed video analytics
  • Custom export formats
  • Batch processing with priorities
  • Advanced codec selection

Features users actually wanted:

  • A simple "make my videos smaller" button
  • Clear space savings numbers
  • It not crashing

I spent six weeks building features that sounded cool but didn't solve the core problem better.

This is the solo developer trap: When you're alone, every idea sounds good. There's nobody to say "that's nice, but is it important?" You end up building for yourself, not users.

I eventually stripped out 70% of what I built. Painful, but necessary.

Month 4: The Realization About Quality

I thought I was done. The app compressed videos. It was fast. It had features.

Then I started using it on my actual video library.

The results looked... okay. Not bad. But not great either.

I'd optimized for compression ratio (smaller files) without obsessing over quality. Videos were blocky. Details were muddy.

I spent the next month deep-diving into video encoding parameters:

  • Bitrate curves
  • Codec efficiency
  • Quality metrics (PSNR, SSIM, VMAF)
  • Perceptual optimization

I ran 1,000+ test compressions. I did blind quality tests on myself and others. I learned more about video encoding than I ever wanted to know.

The result: Compression that was actually indistinguishable from originals on phone screens.

The cost: Another month of development, massive self-doubt, and one argument with my wife about whether I was "wasting time on perfectionism."

(She was right. But also, the quality improvements mattered.)

Month 5-6: The TestFlight Reality Check

June 2024. I launched a beta on TestFlight. I recruited 50 users (friends, family, some strangers from Twitter).

What I expected:

  • "This is amazing!"
  • Minor bug reports
  • Feature requests I'd already planned

What I got:

  • Crashes on devices I didn't own
  • Confusion about basic features I thought were obvious
  • Requests for things I'd deliberately left out
  • One person asked if it also did photo editing (no, why would it?)

The most valuable feedback: "I don't understand what this app does."

Wait, what? I have screenshots, descriptions, tooltips. How do you not understand?

Turns out, when you build something, it's obvious to YOU. You've been living with it for months. But to a new user seeing it for the first time? Not obvious at all.

I spent two months on UX improvements:

  • Simplified onboarding
  • Clearer value proposition
  • Better visual feedback
  • Hand-holding for first-time users

I deleted ~1,200 lines of code and replaced them with ~400 lines that were clearer.

This was humbling. But crucial.

Month 7: The App Store Rejection

August 2024. I submitted to App Store review.

Submission 1: Rejected (privacy policy issues) Submission 2: Rejected (metadata needed clarification) Submission 3: Rejected (in-app purchase descriptions unclear) Submission 4: Approved!

Each rejection took 2-3 days. Each fix took hours to implement and re-test.

The worst part? Some rejections felt arbitrary. I'd see other apps doing exactly what I was doing, but my app got rejected for it.

Solo developer lesson: App Review is a black box. You can't argue. You just iterate until they say yes.

Month 8-9: The Launch That Wasn't

September 2024. Bonsai was on the App Store.

Downloads in Week 1: 23 Downloads in Month 1: 147 Revenue: $18

This wasn't a launch. It was a whisper.

I had built the app. I hadn't built an audience.

I'd spent 8 months on product, 0 months on marketing. Classic developer mistake.

I scrambled to learn marketing:

  • Created Twitter/X account (felt awkward self-promoting)
  • Posted on Reddit (got roasted for "another storage app")
  • Wrote blog posts (nobody read them)
  • Tried ProductHunt (got 47 upvotes, 3 conversions)

What actually worked:

  • Personal outreach to tech bloggers (1 in 20 responded)
  • Posting in iPhone storage help threads (felt spammy, but drove actual users)
  • Listening to user problems and fixing them fast (word of mouth is slow but real)

Marketing as a solo developer is soul-crushing. You're competing against venture-backed companies with actual marketing teams. You're shouting into the void and hoping someone hears.

Month 10: The Burnout Wall

November 2024. I hit a wall.

I'd been working evenings and weekends for 10 months straight. Full-time job during the day. Bonsai at night. No breaks.

Symptoms:

  • Couldn't focus on code
  • Every bug felt insurmountable
  • Stopped responding to support emails
  • Watched Netflix instead of working, then felt guilty about it

My wife sat me down: "Is this sustainable? Is it worth it?"

Honest answer: I didn't know.

I took two weeks off. Completely. No code. No emails. No checking analytics.

When I came back, I set new rules:

  • Maximum 10 hours per week on Bonsai
  • No work on Fridays (date night) or Sundays (family time)
  • One feature at a time, no multitasking
  • It's okay if things move slower

This probably delayed some updates by a month. But I didn't quit. That matters more.

Month 11-12: The Slow Growth Phase

December 2024 - January 2025. Things stabilized.

Not "hockey stick growth" stabilized. "Slightly up and to the right" stabilized:

  • 50-100 downloads per week
  • $200-400/month revenue
  • 4.7 star rating
  • Occasional feature request I actually want to build

This isn't life-changing success. It's not even quit-your-day-job money.

But it's real. People are using something I built. They're paying for it. They're emailing to say thank you.

That feels... good?

What I Learned (The Unfiltered Version)

1. Solo Development Is Lonely

There's no daily standup. No team lunch. No "let me bounce an idea off you." Just you and your thoughts.

Some days, this is freedom. Some days, it's isolating.

Solution: I found 3 other solo developers online. We have a weekly video call. Just talking helps.

2. Everything Takes 3x Longer Than You Think

Every. Single. Thing.

Simple features become rabbit holes. "Just add this button" turns into refactoring the entire view hierarchy.

Solution: Triple your estimates. Then add a buffer. You'll still be late.

3. You Can't Build Everything

You have limited time and energy. Every feature you build is a feature you're not building.

Choose ruthlessly. Say no to most things. Even good ideas.

Solution: Keep a "maybe later" list. Feel free to ignore it forever.

4. Shipping Beats Perfecting

I wasted weeks perfecting features that users barely noticed. Meanwhile, obvious bugs annoyed people daily.

Ship something good enough. Fix it when users complain.

Solution: If you're not slightly embarrassed by your V1, you waited too long.

5. Marketing Is Harder Than Code

Building the app was hard. Getting people to try it is harder.

You can't engineer your way out of marketing. You have to actually talk to people, write content, put yourself out there.

Solution: Start marketing before you launch. Build in public. Share your process. I didn't do this. Do better than me.

6. Revenue ≠ Success

I make a few hundred dollars a month from Bonsai. That's not "financially successful."

But:

  • I solved a problem I had
  • I learned a ton
  • I helped other people
  • I own something I built

Is that success? Depends on your definition.

Solution: Define what success means to YOU before you start. Otherwise you'll chase metrics that don't matter.

7. The App Store Is Brutal

Between Apple's 30% cut, App Store discoverability being terrible, and competing with VC-funded apps, making money as a solo dev is hard.

Reality check:

  • Top 1% of apps make real money
  • Top 5% make side-income money
  • Everyone else makes coffee money

Know this going in.

Solution: Don't quit your day job unless you have 6-12 months runway and proven traction.

Would I Do It Again?

Honestly? I don't know.

Things I gained:

  • A shipped product people use
  • Deep technical learning
  • Validation that I can build and launch something alone
  • Side income (modest, but real)
  • Pride in creating something from nothing

Things I sacrificed:

  • ~1,000 hours of nights and weekends
  • Stress on my relationship (though my wife is incredible)
  • Hobbies I didn't have time for
  • Sleep (so much sleep)
  • Some mental health in the burnout months

Is the trade worth it? Ask me in a year.

If You're Thinking About Solo Development

Some unsolicited advice:

Do it if:

  • You have a problem you're desperate to solve
  • You can sustain yourself financially during development
  • You have support from family/friends
  • You're okay with slow progress and uncertainty

Don't do it if:

  • You're looking to get rich (unlikely)
  • You need external validation to stay motivated
  • Your mental health is already fragile
  • You expect overnight success

And remember:

  • Start smaller than you think
  • Ship faster than comfortable
  • Talk to users constantly
  • Take breaks before you need them
  • It's okay to quit if it's not working

Where I Am Now

Bonsai isn't making me rich. It's not going viral. It's not going to be acquired by Apple.

But it's solving a problem for people. It's growing slowly. It covers its costs and then some.

Most importantly: It exists.

A year ago, it didn't. I had an idea and a problem. Now I have a shipped app that people use.

That's something.

Is it worth a year of nights and weekends? Ask me after year two.


If you're a solo developer struggling with something similar, or you want to swap stories, I'm on Twitter/X @vishalvshekkar. I can't promise advice, but I can promise commiseration.