in iOS

The Importance Of First Impressions

A few weeks ago, I set as my drop-dead, better-be-done-or-I-kill-myself date for Flower Garden to be March 20th. The date getting closer allowed me to focus and put a huge, hard effort. Since I got back from 360iDev, I’ve been working between 18 and 20 hours per day. Yes, that’s pretty crazy, but it actually didn’t feel like a strain because a) I love doing this and b) I can do it from the comfort of my own home. But that’s the topic for another post.

The point is that as March 20th approached, I was slaying bugs left and right. Flower Garden went through two rounds of beta testing and it had some great feedback. All the crash bugs and top priority tasks were done and taken care of a few days before the deadline. Things were looking good for a submission to Apple on the expected date! Yay!

fgThen, with just a day to go, I decided to step back a second. Something had been nagging at me for a bit and I had to be honest with myself. Yes, all the crashing bugs and major features were taken care of. But how come my issue tracking system still had 50 entries in it marked as “Final release”? It wasn’t a big deal. Those were all marked as “low priority” or “trivial”. And that’s the great thing about the iPhone, I can submit the application and then start pushing out updates as I get to the little stuff. Right? Right?

This wasn’t a case of taking Old Yeller behind the shed. The app was looking good. Really good. And it wasn’t just a puppy, but a fully grown, beautiful app. It’s just that it was a bit… slow and rough around the edges.

This is were things got really tough for me. On one hand, I was ready to ship this baby. I have been working on it for almost six months (where did time go??) and a lot of people were loving it. But when I allowed myself to give it one hard look, I realized that the experience I was hoping for wasn’t there. Yes, the functionality was there, but not the experience. With a tool that gets a job done, maybe that’s not a huge deal. But Flower Garden is all about the experience.

I tried to rationalize it by thinking how I could get all those little, low priority things done in an update right away: Improving the performance of the rendering, making the transitions more responsive, adding those subtle animations and sounds, making load times shorter… In short, it was missing the key ingredient to a successful experience: polish. I could always add that polish later, but what about all the people who bought it right away? What kind of impression were they going to get? In a saturated market like the iPhone App Store, and especially with a title aimed at a casual audience, first impressions are everything. If people don’t fall in love with your product right away, you might not get a second chance.

So it was with a very heavy heart that I decided to slip my target date. I really needed one more week to get to the point that Flower Garden could be the experience I had envisioned. And of course, to make it twice as hard, this coming week it’s GDC, so that means that the release date is pushed out two weeks.

Coming from the console world, where updating your game is a rare opportunity and you better get everything right for the big release,I was really counting on releasing frequent updates. Does it mean that updates are useless in the App Store? That we shouldn’t take advantage of them? Not at all. I realized that I was looking at them the wrong way. Updates are supposed to provide bug fixes and new functionality. They are not a crutch for sloppy development and an excuse to release products before they’re ready.

Now I have regrouped. Reassessed where I’m at, and prepared the final plan of attack. If all goes well, I will be submitting Flower Garden to the App Store the last week of Mark/beginning of April. When exactly? When it’s ready. Lesson learned.

  • hkk

    Definitely the right choice. Polish is important.
    Also, don’t rely on being able to push out updates quickly. I submitted an update for my app over two weeks ago now. It was unjustly rejected once and my gut feeling is telling me that the resubmission might be rejected again. In the meantime I am getting tons of reviews complaining about the things that I already changed/fixed in this update over two weeks ago. A bit frustrating.

  • Great post, Noel! It’s great to see that there are developers out there building apps for the App Store who really care about quality and polish. Best of luck finishing up Flower Garden!

  • It’s a tough call.

    On the one hand, saying “It’s ready when it’s ready” is a mark of a committed developer, determined to make a real difference to the gaming world (think John Carmack, Peter Molyneux).

    On the other, it’s the developer’s desire to tinker, to improve and to polish that means it becomes impossible to make money. A week’s slippage is fine. If it slips to 12 months from six, you need to be *absolutely* certain that the slippage will definitely lead to 2x sales, otherwise you’ve lost the chance to make money.

    And of course, as iPhone apps become more sophisticated, and you need to pay other people too, it gets worse.

    I really hope that Flower Garden is success. I completely agree that polish matters. But I hope that you keep an eye on the fact that you are running a business.

    Good luck.

  • George Sealy

    Congratulations Noel on making a tough choice, especially when there’s no easy way to know if it’s the ‘right’ choice or not. The temptation to release software can be huge, and it’s a tough call for an Indie to hold back something until it’s truly ready. I’m definitely looking forward to seeing what Flower Garden will become (still need testers? 🙂 )

  • @Nicholas: You’re right about the blurred lines between making a significant impact to the game, and just tinkering with something or letting features creep in. I’m definitely not allowing any new features to creep in during this extra time, so I’m keeping a vigilant eye on that.

    I know it’s the right call from a personal perspective: I really don’t want to release something I’m not happy with. All I can hope is that it’s also the right call from an economic aspect as well.

    @George: Thanks for the kind words! I’m all set for testers for now, but thanks for the offer. Now it’s all polish, polish, polish 🙂

  • Hmm. Not sure if this is the right decision. It’ll be interesting to see what happens. Good luck!

    I’m seeing a lot of iPhone developers spending way too much time on apps, IMHO. All things, being equal, of course, one would like to produce the most polished app possible. Unfortunately, with the saturation of the store, once you’ve shipped something competent, it’s pretty much random what will become popular. In light of that it makes sense to me to ship many small (competent) things, and let the market tell you what to do next, what to kill, and what to expand upon.

    I was working on a (i thought) fairly simple action game, but it was dragging on for months. I got the idea for iLightning, talking to a friend, and we implemented it in about 8 hours. So far it’s sold over 400 copies, with 0 marketing after the first week, and no day of 0 sales, yet. I have many update directions planned, but need to find the time …

    The more ambitious project I was working on would be a better showcase of my developer talents, but frankly can’t match the ROI of iLightning, except by building on my existing audience.

  • Pingback: [updated] Project Management for iPhone Game Development – Bytesize Adventures()