19 May 2011

My iOS Debut - Shine

Five days ago, my weather app Shine hit the App Store. It was a big day for me. While I’ve designed a good deal of web sites, this was my first “real” coding project up for public consumption.

Shine is #1 Shine icon Shine queries

History

I began exploring iPhone development over a year ago. I created a “Hello World” app, watched a few WWDC tutorials, Googled up a storm, and got nowhere. I retried every few months without success. Shit just wouldn’t work. Delegates? View controllers? IBOutlets? I couldn’t make sense of it.

But a month ago, something clicked. Delegates shmelegates. MVC - nbd.

After experimenting with SimpleGeo’s python client, I decided I’d make a simple weather app. You know, just to see if I could get the current temperature to show up on my phone. Three weeks later, I submitted a polished product to the App Store. And just like that, AppThat was born.

Lessons

In just five days, 10,000 people have downloaded Shine, making it the bestselling weather app on the App Store. At one point, Shine was listed as the #17 bestselling app overall after making headlines on DaringFireball, Gizmodo, Minimal Mac, MacStories, and The Brooks Review.

In creating Shine, I’ve learned a lot:

  • Github is your friend. If you’re unfamiliar with a platform, don’t start from scratch. Take a look at what others have built. Change things. See what breaks. Eventually, you’ll figure it out.
  • Plan for failures: bad requests, slow internet connections, missing values, memory warnings, etc. To a user, there’s no excuse for a crash.
  • Don’t settle for mediocrity. At one point, scrolling a UITableView became a bit jittery. It bothered me; I optimized. Nuances matter.
  • Put your app in someone else’s hands. Before I decided to add extended forecasts, people were tapping and swiping when there was nothing to tap or swipe. But the user is never wrong; after all, you’re building the app for them.
  • Don’t underestimate international markets. I wish I had designed Shine with global support from day one!
  • Balance perfectionism and pragmatism. Your app will never be perfect, but you can certainly release too soon. When you’re deciding where to draw the line, ask yourself this question: “Are you proud of your product?”

Update

January 2012

  • Over 25,000 people in 30 countries have purchased Shine.
  • The App Store named Shine the best of the iPhone Weather category for 2011.
  • Shine has served over 3 million weather requests in 6 months.