If you didn't hear, Rogue Amoeba, a prominent Mac developer recently pulled the plug on plans to develop for the iPhone. Why? Well the long story is here, but the short story is that essentially Apple held up a simple software update for Rogue Amoeba's Airfoil Speakers Touch app. It took over 3 1/2 months to get accepted by Apple.
After the long, frustrating ordeal, Rogue Amoeba's founder Paul Kafasis announced they were discontinuing development for the iPhone / iPod Touch as a result. We decided to find out what Paul thinks could be changed about the app store, or whether it's beyond repair, as well as his future plans:
TDL: Is the App Store approval process broken beyond repair?
Paul Kafasis: Is it broken beyond repair? No. Apple can make changes at any time, just as they have previously. But is it currently broken? Yes, in many ways it is.
What are some easy changes Apple could make to be more inviting/convenient for developers?
Well, easy is relative, and I won't presume to know what would be "easy" for Apple to do. But there are some obvious things that could and should be changed.
To start, there's a whole slew of things developers want, which should have been obvious to Apple from before they even opened the store. These are things third party vendors use on the Mac all the time to help sales.
Discount coupons, for instance, are very useful and not at all possible at this time. The same goes for discounted upgrades - if a user owns version 1, he expects to get version 2 at a lower price. Right now, it's all or nothing - either full price for a completely new app (as seen with Tweetie 1 vs. Tweetie 2, which were two distinct apps), or a free update to the same application.
We offer free trials of all our software on the Mac, and that's not possible on the iPhone. The move to allow free apps to have paid in-app content is nice, but it's still not the same as having trials of software. It seems that this should be uncomplicated. Apple already has a rentals system in place for movies, and the same could be used to make a very effective 7 day trial of any software.
As far as making things more inviting, a big issue for us is the uncertainty. Right now, developers have no guarantee that the app they spend months of time and tens of thousands of dollars developing will ever ship. It could be rejected for myriad reasons, and never see the light of day. That's no way to run a business.
Even assuming an application does ship, we still have to wait days or weeks to ship bug fixes. Again, that's no way to develop software. Bugs are a fact of life when it comes to software development, and when we have a bug fix, we want it in our users' hands as soon as possible. On the Mac, we can fix a bug in the morning and ship it in the afternoon, if it's urgent enough. On the iPhone, even the most expedited review takes a couple of days, and the average is much longer. The end result is that users have buggy old versions long after we've fixed them.
Are there ways Apple better interacts with Mac developers that could be applied to help iPhone developers?
I suppose having Apple listen to developers more would be good. Many developers have been requesting the things I've mentioned, and more, for months, with no visible response from Apple. The whole thing is very one-way, and Apple hardly talks to developers at all. That model may work on the Music and Movie side, but for applications, with tens of thousands of developers, some more openness would work well.
How would you feel about a "trusted" developer model, in which certain app developers would be able to push updates directly? If this created two classes of developers, would that be a bad thing?
There are different ways to do this. Some have proposed a paid Premium account, but that strikes me as the wrong approach. As you say, it has the potential to create an upper class of developers, and with that, a lower class as well.
One idea I've heard is the idea of reviewing initial releases, and then allowing subsequent updates through immediately, with the possibility of a post-release review, either every time or only as needed (say by Apple noticing crashes). Once Apple has approved the initial version, a simple bug fix really shouldn't require a full review.
We talk vaguely about how "Apple" could fix the app store, but is there a face for developers: a specific person where the buck stops?
There are a few people inside of Apple to whom developers can talk, including WWDR (Worldwide Developer Relations) reps. However, for most developers, there's no public face at all, and that's certainly an issue. The best we've gotten so far is a direct email that bypasses the first tier of reviews, as noted by Craig Hockenberry . That's something, but we need more.
Do you think Apple should abandon trying to police the store: allow purchases outside of the App Store?
I absolutely think we need alternate ways to ship software. Since before the App Store shipped, I wanted a way to ship software independent of Apple. Android allows for this on their platform, and of course, so do Mac OS X, Windows, and the web. It works just fine on both desktop and mobile platforms.
I don't think they should abandon policing their own store. If anything, they could be much more strict with it, provided there's another way to install software outside of the store.
Have you gotten feedback from other developers on your stance?
We've received a great deal of support from other developers, who've seen many of the same problems we have. I don't expect many developers to leave the platform, and if they're doing well financially, there's no reason for them to do so. That said, other developers are aware of the problems, just as we are, and they want things to get better too.
Coming from a Mac app background, how would you compare the app development process? Do those who write for the Mac have a leg up when it comes to writing apps for the iPhone?
In terms of technology and hitting the ground running, working on Mac OS X provides a great leg up. There are new things to learn, but a whole lot of knowledge from Mac OS X can be applied. That's what made the platform so appealing to us from the beginning.
However, as far as the certification process and so on goes, things are a mess. Mike Ash's post on this explains a good deal of the problems.
When we're developing software and want to install it on our own devices to test, it really shouldn't take this much work.
Have you considered developing for other mobile platforms, ie. Android?
Not really. We're asked this often, but the iPhone wasn't interesting to us as a mobile platform, it was interesting because it was based on OS X. Android, for instance, requires development in Java, something with which we have little experience. The iPhone let us leverage the knowledge we have from Mac OS X, something that other non-Cocoa mobile platforms wouldn't do.
Switching gears, your most well-known apps (Airfoil, Audio Hijack Pro) offer functionality Apple could build-in to their products. Any concerns about that?
Not really. This concern exists for most any application. 10 years ago, no one thought Apple would make an MP3 player. A couple years later, iTunes came out, and fairly quickly killed the market for third-party MP3 software. Similarly, it's a tough sell to make a third-party Mail client for Mac OS X. Apple can do this at any time, with most any application - we simply work to diversify, and add features Apple likely can't or won't.
We know your plans for the iPhone platform, but where are you focusing Rogue Amoeba's Mac software over the next year?
Right now, we've got a big update for Radioshift nearing release. That's been in beta testing for a couple of months now, and it's a big update with support for thousands of new streams as well as many improvements. Beyond that, we're hard at work on the next version of Audio Hijack, and major updates to Airfoil, along with the smaller updates to all of our applications that are always in the works.
A large majority of iPhone developers don't have the exposure/platform you have. Is there anything you would suggest they can do to help change the App Store?
Anyone who sees a problem should work to get it fixed. Speak to Apple via WWDR and their other Feedback channels, and talk about it. Raising awareness of the problems is the first step to getting them fixed.
Our thanks to Paul for the Q & A. You can find out more on Rogue Amoeba's blog, Under the Microscope.