I’m just back from my promised 2 week vacation. It’s been pretty much the only thing that’s gone right so far with the app-a-week project. In addition to not releasing the app I had planned for week 2, I also was informed by Apple that Globe (the app from week 1) was rejected for having a bad UI.
Turns out, this is kind of hard. I’m currently working on my planned app for week 3. At some point, I’ll try to get the first 2 apps polished to the point where they are releasable. But for now, I’m working on app number 3. It’s a variation on timer apps. I hope you like it.
At this point, I thought I’d mention a few hard-won lessons from the first two weeks, for my edification as well as yours.
TestFlight. This is a free service that lets you manage iOS beta testing easily. Your testers sign up through the site, and can then automagically download the beta from the TestFlight website directly to their phones. Previously, this required lots of mucking about with provisioning profiles. I highly recommend this service to anyone who’s beta testing iOS apps. testflightapp.com
WordPress. Converting the main Jera website to WordPress means that I can put up pages for new apps quickly and efficiently. The current theme is ugly, but this can be changed later without affecting the content.
What didn’t work:
Starting late. The first week I started late because I began the week working on the WordPress conversion, instead of the first app. The second week, I started late because I was still working on packaging the Globe app from the first week. If I’m going to get the app out on Friday, I need to get started on Monday, and have a prototype working by Wednesday at the latest.
Shipping a demo. When it became clear late at night on Wednesday 6/22 that the app I was planning to ship for week 1 wasn’t going to happen in time, I fell back on shipping Globe — an old demo app of mine. I thought I could just polish it off and ship it, but that clearly didn’t work. Just because you have running code doesn’t mean you have a product. I would have realized this except for the next problem…
Ignoring beta testers. The beta testers all said that the UI on Globe was non-intuitive. I chose to ignore them, and Apple rejected the app for poor UI.
Diving too deep into new technologies. At this point, I’ve done a lot of work with UIKit, but not so much with OpenGL or any of the various sound APIs. So maybe choosing my first two apps to require deep understanding of those APIs wasn’t such a good idea.
Being out of town for week 1. I already had a weekend trip scheduled for Thursday and Friday of week 1, but I thought I could still finish on time, especially once I fell back on Globe. In an effort to polish Globe, I wanted to add the sun tracking feature. But I left the book I needed (Practical Astronomy with Your Calculator) at home. So I had to drive home to get it, killing about 4 hours on Friday, when I could have been coding.
Now I’m back from vacation, and making a good start on a brand-new app for week 3. I’ll keep you posted on developments.