App Store approval process = quality?

Posted on Feb 9, 2010 in iPhone, Opinions

Over on the 37signals blog, David makes the argument that the App Store review process doesn’t actually serve to improve the overall quality of the apps posted to the store.

iPhone vs. Mac app quality

If you compare a typical Mac app with a typical iPhone app, you’d probably have to agree with David. I’ve experienced far more issues with some fairly popular iPhone applications than I have with popular and successful Mac applications, despite the lack of any sort of approval process.

David argues:

Only good stuff in the App Store: Ha! The App Store has some 140K+ applications. I can guarantee you that the bulk of that is less than average. There are some 100 fart apps for christ sake!

[…] In fact, lots of software has lower quality because of the App Store process. Developers can’t easily get bug fixes out and they certainly don’t release new versions as often as they otherwise would. This harks back to the era where software was really cumbersome to release on CDs, so you did it much less frequently.

His argument, as I’ve understood it, is basically: there are shitty apps on the App Store because updating an app is so cumbersome and slow, so developers can’t iterate as often.

I think that’s an oversimplification though. A large number of developers on the App Store are probably new to Objective-C programming and its pitfalls. The iPhone’s limitations also mean that apps are more severely affected by problems that wouldn’t affect a desktop app (memory issues for instance) – another reason that iPhone app quality is lower than Mac applications.

There are definitely other reasons as well, but I think those go a large way towards explaining why so many apps on the App Store are pretty mediocre, when compared with desktop Mac apps.

Newbie developer + extremely limited hardware resources = poor software quality.

If the App Store didn’t have the approval process, you’d still have a lot of crappy apps.

But what about “real developers”?

But let’s ignore the shitty apps on the App Store for a second; Does the approval process improve the quality of apps made by respectable, experienced software developers?

In my experience, it does.

On the Mac, built-in update mechanisms (such as the excellent, ubiquitous Sparkle framework), make it easy for a developer to push out a release and fix any issues almost instantly.

An iPhone app doesn’t have that luxury, precisely because of the delay caused by the approval process. Instead you’re stuck with 7-14 days of angry customers and lost sales due to poor reviews.

So “real developers”, with a reputation to protect, are forced to test and review their own apps more extensively before submitting them to Apple for approval.

In that sense the approval process is a blessing and a curse for consumers: it forces developers to test their apps more thoroughly, but it also means that if a bug does slip through the cracks, you’ll be forced to put up with it for quite some time.

So is the approval process a good idea?

Assuming the approval process forces developers to test more and therefore does improve the quality of apps – is it beneficial overall for consumers?

I’d still argue it’s not. Every piece of software has bugs. The approval process means developers spend a large amount of time hunting down the million and one things that could go wrong – time that might be better spent adding new features or polishing another area of the app.

And when an issue inevitably does crop up, the artificial delay means your paying customers will be stuck waiting 7-14 day for a (probably tiny) fix that a Mac developer could have pushed out in an hour or two.

I think one solution would be for Apple to insist on a very thorough review for initial releases, but then only quick reviews for updates and fixes.