Just keep chipping away at it

Why perfection and speed may not matter as much as you think.

Earlier this year, I wrote about the fun and challenges of making an iOS app on the side with my friend Trevor. After months of development, we were thrilled to launch Hello Weather at last. It felt like a huge victory…for about 20 minutes.

Then we realized our first release was terribly incomplete. It was slow, it didn’t support international units (or any customization whatsoever), it had a lopsided logo, UI transitions were clunky, and it didn’t work at all without Location Services enabled.

Our to-do list rapidly grew out of hand. Ugh. What a piece of garbage this app was.

And yet, a funny thing happened. Despite all those imperfections, random sweet people on the Internet emailed us and wrote reviews about how much they enjoyed it anyway.

I have been looking for so long for the perfect weather app… At long last, I have found it! Hello Weather is just the right mix of clear, concise, uncluttered and accurate weather info. I couldn’t ask for more. The layout is intuitive and super easy to navigate. It tells me what I want to know, rather than confuse and overwhelm me with a bunch of irrelevant weather stats. It’s an absolute pleasure to use!

A few weeks later, someone added it to Product Hunt, which gave us an attention boost. Then we started getting positive press in legit places like AppAdvice and Macworld.

Since then, Hello Weather has amassed 10,000 downloads and consistently draws more than 1,000 users daily. Not too shabby for an imperfect, unadvertised, feature-limited hobby project in a highly competitive market.

With some goodwill in hand and a bit of happy momentum, we debated what it would take to turn our baby app into a truly excellent, grown-up one, with all of its warts patched up.

The answer? A bunch of unglamorous laborious work, of course!

There was just one looming problem: Trevor and I both have real jobs. And families. And busy lives. Collectively we could maybe muster 8 hours per week of attention for this thing.

But we still enjoyed working on it, so we decided to relax and use whatever time we have available. If we have 8 hours per week, fine. Some weeks it might be 10 hours. Other weeks, 1 hour. Fine.

That’s what we’ve been doing in the months since launch. We gradually fixed up the fundamentals — adding essential settings, replacing that lousy icon, and improving speed, stability, and transitions.

Along the way, we matured as developers. I figured out how to deal with Xcode’s finicky autolayout system. Trevor injected a dose of turbo speed, so now it loads faster than all the weather apps out there.

A real, full time dev team might have gotten all of this done in 6 weeks, but it took us 6 months.

So what?

It’s easy to feel like your work needs to be top-notch perfect immediately or else it’s not even worth doing. Or that hustling and sacrificing and grinding things out is the only way to achieve what you want.

Screw that. That mindset is exhausting and it will burn you out, especially for passion projects that are supposed to be fun. That’s why a lot of people try and fail to make progress on their ideas.

It doesn’t have to be this way. You decide what progress means for you, and what pace you want to take. Imperfection can be OK. Slow progress can be OK. It’ll get better eventually. Just keep chipping away at it.