Tales from Development Hell – Why iPhone Developers Have It Good

By

post-12152-image-487976100f93f23418055bd95607b4fd-jpg
Screenshots from PodTrapper

An intrepid software developer has published a thorough memoir that details many reasons why Apple is so far ahead of the field in the mobile applications game, and why Blackberry, Palm and Android will have a hard time catching up any time soon.

Marcus Watkins found himself developing an application for his mobile phone in much the same way that countless other developers undoubtedly realized their inspirations: he was minding his own business when he realized one day his life would improve if his phone could do something that, at the point of his epiphany, it couldn’t.

He did his research, found out there wasn’t an application to meet his needs, realized the size of the potential market for his app in the many millions of people with his phone – a good percentage of whom might find his application useful – and he went to work.

Unfortunately (perhaps) for Watkins, his phone is a Blackberry, but fortunately (for Blackberry users) he persevered, and his story shows just how far behind Apple the other smartphone makers are as the device category enters its third year in existence.

Right off the bat, the application Watkins found he needed to develop – PodTrapper, a simple podcast player – was included as part of the basic functionality of the iPhone from the very beginning.

True, there has been controversy over third-party podcast players on Apple’s App Store, but the sheer popularity of podcasts today and the fact that there was no way to play them on a Blackberry until Watkins launched his app this past spring speaks to a certain failure of imagination among the executives and engineers at Research in Motion (RIM), makers of the Blackberry.

In planning how to develop his application, Watkins found he had to choose among 5 versions of RIM’s SDK, which was daunting enough, but he also found that “the more features you get the fewer devices you can support … and unfortunately not all operating system revisions are available for all devices.”

After going through a complex algorithm (illustrated with colorful bar charts) to arrive at which SDK might bring him the best chances for success, Watkins looked at the Blackberry mobile UI and said, “I envy the iPhone developers out there.”

To put a Blackberry app “in the same league” as an iPhone app, he said, “a significant portion of the code [must be] dedicated to drawing lines, bezier curves, bitmaps and shading rectangles in just the right way,” whereas “the iPhone SDK provides all sorts of pretty widgets that come pre-made to fit in with the platform. Right out of the box you get a clean UI that looks ‘modern’.”

Adding insult to injury, from the developer’s perspective, “RIM has all sorts of UI widgets they use in their first party applications — rounded corners, sliding screen transitions, gradient list fields, etc. — but they don’t release any of that for use by third party developers. The results are apps with wildly inconsistent UIs, created by developers who had to spend considerable effort making them inconsistent.”

Watkin’s piece is a long one, but he details a dozen different ways in which it becomes clear – for all the bitching and moaning about Apple’s obsessive secrecy and desire for control, about the inconsistency of the App Store approval process and the ‘Big Brother’ nature of Apple’s gatekeeping function – many of the decisions and choices Apple has taken out of 3rd party developers’ hands have meant more success for the iPhone, more success for Apple, and more importantly, more success for at least some developers.

Hate that iPhone is only on one network? Try developing an app for use across carriers with network communications “implemented as a bunch of totally isolated transports that vary by data plan instead of carrier.”

Hate Apple for not allowing apps to run in the background? Watkins relates a tale in High Geek involving a “100K RSS feed that could never be freed” and concluded in the end, “I can definitely see why Apple has been hesitant to open up background processing on the iPhone. It’s really easy for bad developers to make the whole platform look bad.”

His story about selling his app and choosing among distribution channels and trying to get paid and having to combat random discount “promotions” that always seemed to leave him with the short straw makes Apple’s one-stop shop and across-the-board 70/30 split look beautiful in its simplicity.

It also goes a long way toward explaining why there are over 50,000 iPhone applications in the App Store while the stores of competing mobile platforms have bare shelving in comparison.

The sales and marketing data Watkins presents for PodTraper look much like the sales and marketing data we’ve seen for iPhone apps, and the interactions with his customer base sound like the interactions anyone would have in a similar situation. The bottom lines: promotion is good; publicity is good; customer service (listening to your customers) is good.

Time is an avenger and Apple’s competitors may get it together, in time, to support a development ecosystem that will inspire a 3rd party gold rush similar to the one that has helped the iPhone become a smash hit. As Watkin’s well-written, impeccably documented memoir capably shows, that time is not at hand.

It’s no accident that people say, “there’s an app for that!” when they talk about the iPhone. When they talk about other smartphones, it’s more likely to be, “I wish there was an app for that.”

Newsletters

Daily round-ups or a weekly refresher, straight from Cult of Mac to your inbox.

  • The Weekender

    The week's best Apple news, reviews and how-tos from Cult of Mac, every Saturday morning. Our readers say: "Thank you guys for always posting cool stuff" -- Vaughn Nevins. "Very informative" -- Kenly Xavier.