AppStore Improvements

Saverio, Nov 24

Joe Hewitt (famous for his work on the Facebook iPhone application as well as the Three20 iPhone library) posted an article a few months back and followed it with his announcement earlier this month that he was handing off the project to someone else because he is "philosophically opposed to the existence of their review process" associated with the Apple AppStore. Joe's a great developer and he's brought a lot of help to the community with his Three20 classes, so it's a shame to see him leave the platform (which goes against his post back in August saying that he wouldn't). I'm sad to see him go but don't agree with Joe that the AppStore should remove the review process all together.

Joe's argument that being completely "without barriers to entry" worked for the Web so it should work for the iPhone platform is comparing apples to oranges. The AppStore is more than just a directory of apps, it's a platform that connects developers to customers.

1. The web is "instantly accessible." You don't "download" web sites before you get to view the content. In most cases, there's no install or setup process - Web sites are just there. If you go to a bad site, you can simply hit the back button and click on another ad infinitum. Imagine how different the web experience would be if you had to "pre-load" each site? If a user had to wait up to a minute to load a site and get it setup before looking at it. People would be much more careful about the links they clicked and search engines would be forced to have an entirely different setup for search results (user ranked sites? an approval process like the AppStore?). Throw in needing to pay $1.99 before clicking through to see if the site is what you need and it would be even more aggravating to come across a loser. Certainly, the Internet (and search space) wouldn't be as popular as they are if it worked this way but it is a good analog to the current state of the AppStore. Let's imagine that Apple did remove the review process. There are already a lot of horrible apps on the AppStore. It seems strange that Apple lets some of this stuff get through. As an entirely open platform, anyone can post to the Web - take a minute and look around; this equals a whole lot of junk sites. On the Web, it's ok because of the nature of "browsing" and the simplicity of it all. People expect to deal with it and know how to vet their own search process. The time wasted is so minuscule that it doesn't bother us; but if that same openness was used in the AppStore it would be absolute chaos - even harder to find anything worth downloading, massively time-consuming to wade through the garbage and extremely expensive to buy and trash apps that were not for you.

2. Monetization is not the same on the iPhone as it is on the Web. On the Web, the majority of revenue comes from ad dollars. Other than a few subscription offerings, the user rarely pays when they go to a site. On the iPhone, you're paying for access most of the time. Sure there are a lot of free apps, but there are also a lot of paid apps worth downloading. If you go to a crappy site, you just leave, if you download a crappy paid app, you are really pissed. Despite what those scam-ish ads say, making money on the Web is really hard. Being able to monetize your traffic using ads requires a large audience, and building a large audience requires lead time - read: the time between when you start and when you can actually collect your first check can be very long. With the AppStore, if my app gets released today for $2.99, I instantly get access to an entire community of people who want to buy it. I can start making money the second the app goes live. That "instant gratification" is important when you're trying to pay yourself and your team. Comparatively, Mac OS X developers have historically had a hard time selling their apps because of the difficulty in getting access to customers but the AppStore has fixed that. No-name developers can put out an app and it'll sell on the AppStore as long as it's good.

I hope these points make it clear that there are major differences between the AppStore and the Web, making it unfair to compare them. But I do agree with Joe that the AppStore review process is not perfect. While discarding the review process entirely would be like throwing the baby out with the bathwater, here is what I think Apple needs to fix:

1. Apple needs to make the review process much more transparent. Reasons for apps getting rejected need to be clearer and there needs to be a direct line of communication between reviewers and developers. Right now, if you want to know why your app got rejected or if you want to explain something to the reviewer that they may have missed, you can't. Sure you can email the generic AppStore email address, but getting a response takes forever (timeframe for response is generally between six months and never). When an app gets submitted a "comments" section should show up right in iTunesConnect so developers and reviewers can talk directly about the status.

2. Updates take forever to get approved, making bug fixes hard and drawn out. When I do Web development, if I find a bug, I can fix and deploy instantly. On the AppStore, you can't do that. Sometimes a very large bug appears and it's imperative that you get it fixed, waiting two weeks for a review is not efficient. The reason Apple forces updates to go through the review process at all is because they don't want to review your app, approve it and then have you submit an update that violates their terms. Updates should go through a lighter review process, just a quick check to make sure that the app is not "too different" from the original. The problem is, light reviews still take time and Apple is limited on resources. The best way to "lighten the load" is to give trust levels to developers by building a Karma system. Here's how it would work:

  • The first time a developer submits an app, it takes a while to get approved.
  • Once it's approved, Karma goes up.
  • When the developer issues an update and that update gets approved, Karma goes up again.
  • When they submit another app and it gets approved, the review gets easier and easier since they're establishing a level of trust.
  • In this model, EA wouldn't need to be as heavily reviewed as "some kid from New York." And, if a developer reaches a certain level of Karma, app updates could go through without the need for a review at all.

Some may argue that this will give long-time AppStore developers an edge, but everyone (regardless of Karma) will still need to go through the initial approval for an app they submit. The only thing changed is the time it takes to get updates approved. The other problem is that developers might get lazy since they can just "deploy again" if they need to; however, if the system is built correctly, it can prevent this. If I submit multiple updates in a 72-hour period for the same app, I'm clearly being lazy and my Karma should go down. By creating a system like this, Apple will be able to trust developers more and alleviate some of the load.

3. Planning for an app release is nearly impossible. There is no way to release an app at the EXACT moment you want. Currently, you submit, wait a few weeks and then Apple approves your app and makes it live. You have no idea when it's going live until you get that "Ready for Sale" email from Apple after you've passed approval. This makes it really hard to plan marketing campaigns to build demand. You're essentially making a "guess" and that's no way to run a business. The current method of "picking a release date" is that after you go live, you can quickly login to iTunesConnect and change the "release date" to sometime in the future. This helps, but you can only pick the date and not the time, so your app could go live anytime on that date. The problem with the current solution is that when your app is approved, it goes live unless you change the release date and if you don't get into iTunesConnect fast enough, your app will be available for a few minutes/hours. On top of that, we've found that using a release date ruins your chances of performing well in the Top Free/Paid charts because Apple uses a velocity score based on the date of approval, not the date of release. The simplest fix here is to:

  • Allow developers to specify if they want the app to go live "as soon as it gets approved" or if they want to put the app on hold and then login later and set their own release date
  • Fix the rankings so that they work off the real release date and not the date of approval

With these changes, developers can plan their app launches better, making a fun business a much more viable one.

4. User ratings/reviews are pointless. While this isn't "review process" specific, it's a huge issue with the AppStore. It's no secret that the angry user speaks a lot louder and more often than the one who’s pretty happy with the product. With this in mind, you're always going to see a lot more bad reviews on apps. There are a few things Apple can do to make the system better.

  • Don’t allow people to rate an application without writing a review. How can a developer fix a problem based just on a ranking?
  • Change when you ask users to rate the app – right now the window pops up when a user deletes the app. Pretty safe to guess they are not happy with it if they are removing it from their iPhone. Ask app users one-month in to rate the app.
  • Probably the largest problem of all is that developers can't respond to reviews. A lot of times, users complain about problems that they are having because they are using the app wrong and there's no way to get in touch with them to help them. The most you can do is post in the app description and hope that they see it. A way to connect customers and developers needs to be established; even if it's as simple as letting developers post a reply to a user's review.

I think tweaks, like those listed above, would greatly improve the Apple AppStore. People will still argue for a completely open platform but it's not fair to use an argument that compares any other platform to the AppStore. None of the open platforms out there are as good as the AppStore and none of them have a central agent that gives you as much as Apple gives you (audience for your apps, billing services, file delivery, etc.). Perhaps Apple should allow developers pining for a wholly open platform to "opt out" of the AppStore and develop apps that they would then need to market, bill and deliver all on their own (pretty much the same way that indie development is handled now on the Mac). If Apple isn't promoting the app or "endorsing it" by listing it on their AppStore, then they don't need to review it. Simple right? Sure it is, but why would they offer this? They stand a chance of losing a monopoly on the 30 percent they collect on every app sold through the AppStore, why would they just "open it up" for everyone. Would an open platform be nice? Sure. Is it necessary? Maybe. But in all reality, it doesn't make business sense for Apple.

For those who argue that all 120,000 app developers should revolt and file a class action lawsuit, I don't get where you're coming from. If it weren't for Apple, we wouldn't have any market at all. They created it, we took advantage of it, we profited and they did too. All in all, I think Apple should show good faith to their developers and make some improvements but I don't think they "owe it to us." The iPhone isn't popular because of the AppStore or any of the developers; it's popular because of Apple. I think Apple realizes the value in their developers – they have always been a company that heavily supports the development community, so I have no doubt that we'll see change. It just may take some time.

blog comments powered by Disqus