Wednesday
Jan272010

Helping Haiti

On Sunday I added Recall It! to the list of apps up on AppRelief.  January 25 through January 31, 50% of proceeds from Recall It! will be donated to the Red Cross for the Haitian earthquake relief fund.  So far sales are slow... hopefully this will pick up, though!

If you're an iPhone or iPod touch user, I hope you'll take a moment to browse through the apps on AppRelief and help support the cause!

Tuesday
Jan052010

Real Artists Ship

Last week my first iPhone app (Recall It!, a notetaking app) went live on the App Store.  That was a lot quicker than I expected... submitted it on December 22, just before iTunes Connect shut down for the holidays, and when it came back up on December 28, my app's status was "Ready for sale".  I expected much worse after reading so many stories about lengthy approval wait times, not to mention fuzzy rejection responses!

Honestly, I wanted to do so much more in the app before calling it good.  But my brother was encouraging me to pare it down and just get it out there (thanks, Bob!).  He knew, as I did, that I had fallen into the trap of wanting perfection and a ton of cool features before I was willing to let the world see it.  So I knew I needed to listen to him, because as Steve Jobs famously said, "Real artists ship!".  Plus I'd been telling him for months that the app should be done in "three weeks" or "next month".  And I mean months.  I worked on the app, off and on, for a good part of 2009.  The last five or six weeks of the ordeal I really got tired of procrastinating and started spending a minimum of 10 hours a day, 7 days a week on it.  Because I wanted to just get it done and see what the response was.  Looking back, I know that if I'd done that from the beginning, it would have taken two and a half months, tops.  Now, I don't know if I could have maintained 70+ hours a week for two and a half months straight... but if I could, that's all it would have taken, and probably not even that.  A lot of that was spent learning... learning about the nuances of Cocoa Touch (although I'd dabbled in Cocoa a bit over the last nine years, in my spare time), struggling with Core Data (well... at least after I scrapped my first iPhone OS 2.0 version and started over with 3.0), and various other "new" things.

Even working 70+ hours a week on it toward the end, though, it became apparent that I wouldn't be able to call it done in 2009 unless I started making some tough decisions.  So I finally did.  I started putting features off; some of them were even features that were halfway done.  The really cool thing about doing that is that it enabled me to get the more basic features 100% done, and for the last few weeks of development, I was able to actually start using the app on a daily basis as my only method of tracking tasks and bugs that popped up.  And that's really why I'd started working on the app in the first place; because I really wanted this particular app on my iPhone, and I wasn't finding it out there on the App Store.  A huge benefit of actively using the app during its development is that I was able to find out what worked well... and what didn't.  On the Simulator, it was totally different.  Buttons were much bigger, the mouse pointer was much smaller than a fingertip, and everything was lightning quick.  Once I started actually using the app on a real iPhone and for real day to day notetaking, I immediately realized I needed to rework several things.  I shudder to think what the resulting app would have been like if I'd just waited until I was done and then gave it some cursory testing... I mean, even periodic test runs on a real device would have been relatively meaningless.  Actually using it for real work, though, for probably a couple solid hours a day; now that was a real test!

Those features I ditched to get a good, usable app out in the wild instead of just constrained to the Simulator on my MacBook?  Those will still get done; some for v1.1, some for v1.2 or later.  Well, most of them, anyway.  Some of them I ended up realizing weren't even worthwhile, even in an ideal world.  They just didn't provide enough benefit to justify cluttering up the UI on a real-world sized iPhone screen.

I've got to admit, I'm really jazzed about having actually shipped my first iPhone app!  And hopefully it will start making some real money (sales have been happening over the past week, but slowly... obviously I need to figure out the whole marketing thing).  But my real takeaway from the whole experience is, well, finally coming to truly accept the whole mindset that Real Artists Ship.  And that's definitely something that will be stuck firmly in my mind as I'm working on my current iPhone app project -- yet another half-finished app I started six or more months ago.