Slashdot Mirror


How Apple's App Review Is Sabotaging the iPhone

snydeq writes to recommend Peter Wayner's inside look at the frustration iPhone developers face from Apple when attempting to distribute their apps through the iPhone App Store. Wayner's long piece is an extended analogy comparing Apple to the worst of Soviet-era bureaucracy. "Determined simply to dump an HTML version of his book into UIWebView and offer two versions through the App Store, Wayner endures four months of inexplicable silences, mixed messages, and almost whimsical rejections from Apple — the kind of frustration and uncertainty Wayner believes is fast transforming Apple's regulated marketplace into a hotbed of bottom-feeding mediocrity. 'Developers are afraid to risk serious development time on the platform as long as anonymous gatekeepers are able to delay projects by weeks and months with some seemingly random flick of a finger,' Wayner writes of his experience. 'It's one thing to delay a homebrew project like mine, but it's another thing to shut down a team of developers burning real cash. Apple should be worried when real programmers shrug off the rejections by saying, "It's just a hobby."'"

31 of 509 comments (clear)

  1. And yet... by jcr · · Score: 5, Insightful

    Apple's managed to get more than fifty thousand apps through the process and onto the store. Nobody's going to write stories about the ones that went smoothly.

    -jcr

    --
    The only title of honor that a tyrant can grant is "Enemy of the State."
    1. Re:And yet... by thisnamestoolong · · Score: 5, Insightful

      Yes, but how many of those apps are good? I don't personally have an iPhone but from what I have seen it seems like most iPhone apps are half-baked juvenile distractions, rather than anything seriously useful. It seems logical to me that the overall quality of iPhone apps could be improved tremendously if devs could actually devote time and resources to apps without fear of arbitrary rejection.

      --
      To the haters: You can't win. If you mod me down, I shall become more powerful than you could possibly imagine
    2. Re:And yet... by syousef · · Score: 5, Insightful

      Apple's managed to get more than fifty thousand apps through the process and onto the store. Nobody's going to write stories about the ones that went smoothly.

      Apple is stifling innovation and you think it's fine so long as they've let through 50,000 tetris clones (okay an exaggeration, but it makes my point). Gotta love it. Think different indeed. Think with our marketing blinkers on. To top it off I bet I get modded troll by Apple zealots.

      This is EXACTLY why we need OPEN architectures. No developer should have to go through putting together an application only to have it rejected arbitrarily. The same people who support DRM and copyright supposedly to compensate the creator are happy to deny a developer ANY money for their effort at their whim. Hypocrites!

      Well I won't be buying an iPhone no matter how "cool" they look or what nifty features they have let alone gambling my time and effort developing for one in the hope that some junior Apple cronie rubber stamps it.

      --
      These posts express my own personal views, not those of my employer
    3. Re:And yet... by peterwayner · · Score: 5, Informative

      Actually they did publish it. Then they took 2+ weeks to publish the dozen or so new lines of code that fixed bugs.

      At the same time they rejected a very similar version. The only difference was some extra HTML. The Cocoa code was equivalent.

      So it was fairly random.

    4. Re:And yet... by peterwayner · · Score: 4, Informative

      Are you for real? Do you have any idea of what it was like to develop mobile apps before Cocoa Touch was available?

      -jcr

      That's not the point. It didn't take me long to write the software. It took me weeks to get rejections and the rejection reasons were nonsensical. One dinged me for using open source software because it was a "framework".

    5. Re:And yet... by wizzat · · Score: 5, Insightful

      How many of them are good? Well, quite honestly alot more are good than if there was no review process at all. If there wasn't a review process, we'd see apps that ignored or borked your settings, leaked memory like a sieve, chewed through your battery life out of ignorance, or hell - maybe we'd simply be looking at a deluge of carbon copy flashlight and porn apps, making the app store effectively useless. Hell, in my opinion (and I do have an iphone) the app store already has *too many* apps, and the quality on the ones there aren't quite high enough for my liking.

      I suppose you could think of it this way: you're looking for a needle (good app that does what you want) and you can either search in the pin cushion full of mostly needles and a bit of straw or you can search through the whole fricking hay stack yourself. I'll take the pin cushion, thank-you-very-much.

      Also, I'm not sure that you're really qualified to say anything about the relative quality of the app store. You don't, afterall, actually have an iphone.

    6. Re:And yet... by peterwayner · · Score: 5, Informative

      From the sound of it he's tried getting the app passed numerous times despite knowing that what he's doing is not allowed.

      Really? What am I doing that's not allowed? I pop up a UIWebView and stick in some HTML. That's it. Yet I got some rejection letters telling me that I was either accessing a private API (I wasn't) or somehow interpreting code. (I wasn't.) The UIWebView was doing that and it is perfectly okay for Apple's frameworks to interpret things.

      Here's what the rejection note said:

      No interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple's Documented APIs and built-in interpreter(s)."

      Well, everything I do is pumped into the UIWebView which is well documented.

      Furthermore, how can Apple really make any deep decisions like this? I don't upload code. They don't compile it. They look at raw binary code.

    7. Re:And yet... by hedwards · · Score: 5, Insightful

      If the iPhone were properly designed it shouldn't be possible to brick via just a software installation. Childporn is a straw man argument, they've been banning things which could be used to access content that doesn't go with Apple's wholesome image whether or not that was the purpose of the app. As for the description being accurate, there are ways that they could handle that without reviewing it formally chances are the reviewers have different standards than what an individual has..

    8. Re:And yet... by BasilBrush · · Score: 4, Insightful

      There is nothing abusive about setting standards for the apps they accept. When you agree to the contract to become an iPhone developer, you know they have standards you need to adhere to. Most of us get published without problem. This guy ignores the reasons stated for rejection, tries to hide his tracks, and resubmit the app without remedying the problems. No wonder he gets rejected again and again. This is the behaviour of a loon banging his head against a wall.

    9. Re:And yet... by BasilBrush · · Score: 4, Informative

      Really? What am I doing that's not allowed?

      Given that you are already ignoring the reasons stated in your rejections from Apple reviewers who have seen your app, it's a bit pointless me reiterating.

      But, in your linked whine, you admit to using PhoneGap, and you admit to knowing Apple don't allow it. And you admit to trying to hide your tracks. If I were Apple I'd kick you out of the program for wasting their time.

      Furthermore, how can Apple really make any deep decisions like this? I don't upload code. They don't compile it. They look at raw binary code.

      They obviously have scripts that create and check class dumps and search for tell tale strings.

    10. Re:And yet... by Maury+Markowitz · · Score: 4, Interesting

      > If the iPhone were properly designed it shouldn't be possible to brick via just a software installation

      I'd say the exact opposite is true. Who wants a platform that is so locked down you can't screw it up hacking it? Boooorring! It's precisely because you can brick it that Pwnage tool can exist, and I'd say the platform would be FAR less interesting if that were the case.

      Wow, such an anti-technology skew. So out of place on /.

      Don't get me wrong, the whole approval thing seems like something out of the dark ages to me. But seriously, the machine shouldn't be hackable? Yikes!

      Maury

    11. Re:And yet... by BasilBrush · · Score: 4, Informative

      Tell-tale strings are a pretty bad way to search for malicious or dangerous applications. It's fighting the last war.

      It's be bad if it was the only thing they do. But as an automated procedure it makes perfect sense as one of the many things they check. It caught you out for a start.

      I'm curious. Why do you say that Apple doesn't allow PhoneGap? Is it spelled out in any rule?

      It's spelled out in the rejection you and others have had. You're not allowed to use third party APIs. Apple may have any number of reasons, but that fact that it enables you to change your application code remotely without going through the approvals process is an obvious reason for rejection.

    12. Re:And yet... by jcr · · Score: 5, Insightful

      Tell-tale strings are a pretty bad way to search for malicious or dangerous applications.

      I'm curious: do you actually expect to get your app approved by arguing about it on /.?

      Write your app with the native API.

      -jcr

      --
      The only title of honor that a tyrant can grant is "Enemy of the State."
    13. Re:And yet... by peterwayner · · Score: 4, Interesting

      Not a single version of the Apps I submitted had the ability to change themselves or allow me to change them remotely. None. Nada.

      If they really are doing more than checking for forbidden strings, they would be able to see that quickly by skimming the HTML. It's very boring. Plus, it's easier to read. It's not in binary like many apps.

      I don't see how an "external framework"-- the term they used-- has anything to do with this. The rejection note said that I was to make sure that everything was to be "interpreted and run by Apple's Published APIs and built-in interpreter(s)". It's always been that way from the start. It doesn't matter who writes the code.

      The only way I can interpret (hah!) what you're saying is to conclude that App development is meant to be like elementary school. You're not supposed to work with others. You're not allowed to use well-tested open source code. You're supposed to write your own code. Why is this wrong? Why is working with others going to give me the magical ability to change how my app works remotely?

      Ultimately, it doesn't really matter why Apple rejected my application because many others come away with exactly the same experience even if they don't use PhoneGap: it's all pretty much random. Sometimes you get a cogent rejection note. Sometimes you don't. Sometimes they're fair. Sometimes they're not. It's all a coin flip which is the main point of my piece. It's not about PhoneGap. It's about the randomness and the brick wall and the lack of communication and the absolute power etc.

       

    14. Re:And yet... by Anonymous Coward · · Score: 5, Interesting

      Who wants a platform that is so locked down you can't screw it up hacking it?

      Your point is taken. However, it's a false dichotomy.

      I have an Openmoko Neo Freerunner. It's thoroughly hackable in all respects, except (for legal reasons) the GSM and GPS firmware. Pretty much the opposite of "locked down". Yet it's not possible for me to screw it up completely; there's a backup copy of the bootloader, which cannot be overwritten by any software running on the phone. No matter how badly the OS gets broken, I can always use that backup bootloader to re-flash and start over.

      Even this doesn't qualify as "locking down", however; if I really wanted to, I could buy a "debug board" from OM which would allow me to overwrite everything, including the bootloader. The debug board, naturally, would allow me to brick the phone much more thoroughly, but at the same time it would also enable me to undo any changes I made.

      Even without the debug board, I think the Neo qualifies as both sufficiently hackable and sufficiently unbrickable for most purposes.

    15. Re:And yet... by COMON$ · · Score: 4, Insightful
      "Who wants a platform that is so locked down you can't screw it up hacking it"

      This is exactly why OSX is so solid, and why I am a linux/windows admin. Don't mod me troll or flamebait yet, I love OSX because of that, it runs very solidly and I barely ever have to go to my creative department to fix things, but you don't get a mac for its mod ability. But the reason OSX is so great is because it runs in a handful of platforms, so driver and software problems are minimal. I assume they are trying to do the same with the iphone, this will get you a solid device, even though it will be a pain to develop on.

      --
      CS: It is all sink or swim...oh and did I mention there are sharks in that water?
  2. Annoying process, but still worth it. by mgblst · · Score: 4, Informative

    I too have found this process annoying. Apples now ruling on UIWebView is ridiculous. I tried to work with them on not allowing any links to work, and they weren't happy enough with that, I still need to give it maximum rating.

    But the most frustrating aspect is having no communication with customers. A customer spots a bug, leaves a review that is it. You can fix it, but there is no way to get in touch with that customer, or leave a reply saying you have fixed it. There is even no message that a customer has left a review, you have to trawl through all your apps for reviews every so often, or you will never find out about this.

    It is a great system, I will keep producing apps because of this, but it certainly could be better.

    1. Re:Annoying process, but still worth it. by mr_zorg · · Score: 4, Interesting

      Amen to all of the things you said. I'm struggling right now with the capricious nature of the review process. My app is a gesture based music player with larger fonts, designed to make using your iPhone/touch in the car much safer. It was approved at the OS 3.0 launch, but a few bugs cropped up at the last second. I submitted a bug fix three days later, but it *still* hasn't been posted. Last week Apple rejected the update claiming it duplicates the functionality of the iPod app without sufficient differentiation. Really? Then how come you didn't pull the app completely (instead of just blocking the update)? And since when has the iPod music player offered gesture based navigation to change songs, etc? And why'd you approve it in the first place? Give me a break. I love Apple, but this has GOT to change. I keep hoping it's just because they're overloaded, but let's hire more people already!

      Shameless plug:
      FlickTunes (website)
      FlickTunes (iTunes)

  3. And this is different from what? by girlintraining · · Score: 4, Insightful

    Sidekicks -- They have a "marketplace too". Locked down. T-mobile phones. Locked down. AT&T phones. Locked down. Almost every phone in existance has a "market place" equivalent, which has an approval process. Suddenly the iPhone comes along and people were expecting sunshine and kittens?

    --
    #fuckbeta #iamslashdot #dicemustdie
    1. Re:And this is different from what? by jpmorgan · · Score: 4, Informative

      It's not that other phones have a marketplace with an approval process, it's that the marketplace is the only way to load programs onto your phone. With a Windows Mobile phone, you can download and install a .cab from anywhere you want. If it's not signed you get a brief warning message, and that's it.

  4. Re:So... by mgblst · · Score: 4, Funny

    Make sure you click on every story that doesn't involve you, and inform us of how it doesn't relate to you. I find that comments like yours really add to the discussion.

  5. Have you tried the alternative store? by szyzyg · · Score: 5, Insightful

    I unlocked my phone within minutes of getting it home. I then proceded to take a look at the apps available via the Cydia store, which is unencumbered by the Apple review process.
    Pretty much everything I tried was garbage with the developers doing just enough to get something ported and then abandoning it regardless of what kind of glaring bugs are in the system, yes the reveiw process is harsh but it does help maintain a minimum level of quality that is bettter than 99% of the apps in the cydia store.
    (still, being able to get low level access to my phone still makes the jailbreak worthwhile)

    1. Re:Have you tried the alternative store? by MBCook · · Score: 5, Informative

      What percent of the 20+ million devices running iPhone OS do you think are jail broken? It's just not a reliable answer for most people.

      Some people see things how they are.

      --
      Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    2. Re:Have you tried the alternative store? by foom · · Score: 4, Informative

      I'm sure part of the problem with the "unofficial" app store is that it's quite likely that one of these days, Apple will get serious, and make a bootloader without glaring security holes in it. (I mean come ON, Apple, the bootloader isn't that big!...)

      When that happens, it may be impossible to "permanently" unlock an iPhone without hardware mods, which will seriously limit the Jailbreak community -- probably into irrelevance.

      That's a rather big risk for anyone to take on in their development...

      Heck, I'm not even bothering to learn to write for the iPhone as a *hobby*, because it'd be a waste of my time. Pretty much everything I want to write isn't allowed by Apple's rules, and while my phone is Jailbroken, Apple is trying (so far, completely incompetently...) to prevent me from being able to buy a new jailbreakable iPhone ever again. So it seems to me that the iPhone is basically a dead-end platform.

  6. Wasted time by Djupblue · · Score: 4, Insightful

    Why would I as a developer put time and hard effort into developing software if I believed there was a good chance it would never even get the chance to be installed?

  7. Re:More sensible review please, not less. by peterwayner · · Score: 4, Insightful

    Yes, I think this getting at the deep point I was trying to make. Any one company-- even Apple-- can satisfy all of the demands of all of the customers. Many want only quality apps. Some want violence with faux school shootings. (http://www.techcrunch.com/2009/07/20/apple-approves-iphone-app-that-promotes-school-shootings/) Some don't.

    Apple can't make one group happy without angering the other. It's caught in an impossible bind.

    Personally I'm peeved that they approved this school shooting simulator before approving my GOLD app. But what can I say?

  8. Re:So... by MBCook · · Score: 4, Interesting

    That's your phone provider's fault. I've got an iPhone and I love it. I have wasted so much time with it. Trism, Peggle (great control!), and Flight Control have taken large chunks of my life.

    Both my siblings have Palm Pres. I've played with them, and they're quite nice. My only complains were the build quality (would like it a little tighter) and navigation (you have to know the gestures, they're not discoverable). The card metaphor is very good.

    But the app store is empty. There are three games, one of which is... connect 4.

    The SDK was just released to the public, in beta. It's not meant for games, it's barely more advanced than the first way to develop for the iPhone (which was so roundly criticized). You can't get accelerometer data faster than 4 samples/sec. Palm is supposed to be making a gaming framework, but who knows how long that will be.

    So right now Palm is taking submissions for their app store, which will only be able to handle non-demanding games (no Katamari Damacy there), for it's fall opening. Even if your game is done, no one will be able to buy it for months.

    Basically, the Pre will be devoid of good apps for at least the next 6 months. The situation is really sad. They messed it up, big time. The SDK, even in alpha, should have been available months ago, so there would be apps at launch.

    Windows Mobile has tons of apps, and a tradition of tiny little utilities costing $20. Combine that with the fragmentation of device capabilities and the market is... rough for a consumer.

    Blackberries? I've heard that to develop anything on them that doesn't look like a 1996 Java applet requires you to basically do the painting for every widget on screen. There is device fragmentation here too. The app store it's self is a joke, it's very difficult to use. There is no way to browse it from a computer, which makes using it a nightmare.

    Apple proved good apps were a "killer app". No one really "got" the importance of them before the iPhone's native SDK came out. Unfortunately, after more than a year, no one else is even close to being able to foster any kind of app ecosystem. Palm should have, but botched it.

    I'm not really sure about the G1. I'm guessing it's sales are just too small for it to reach any kind of critical mass soon (where the Pre has a chance and Blackberries are there).

    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
  9. Re:Good by timeOday · · Score: 4, Insightful
    But it isn't dying a painful death in the marketplace at all, is it? In fact it's flourishing.

    You may recall this story about how Apple thrives under Steve Jobs dictatorial and secretive management style.

    You may even recall the infamous slashdot iPod launch coverage in which it was deemed "lame" because it was less feature-rich than the competition.

    This is the history of Apple: there is a market for simple, well-managed products that work out of the box, and maintaining tight proprietary control over the Apple universe is how this is accomplished. I don't know what this says for openness, but there you have it. So long as your use cases aren't too far out of the ordinary, I guess it's worth it to have the trains run on time.

  10. Re:And yet... Better Experience by Webcommando · · Score: 5, Informative

    I actually found my experience with the app process much better. Perhaps I got lucky since I'm not a big development house.

    My first application was rejected within a week due to a crash in a certain situation I hadn't caught previously (I should know better than to assume the debug build would act like a release build). Obviously, they go through each of the screens and check the functionality. However, I had expected one of the "nonsensical" reasons I've heard of or the extremely long review process.

    I was surprised that the reviewer put in what the error was and how to reproduce it. I reproduced the error and ultimately resolved. Next submission was accepted after about a week or so as well.

    Based on this experience, I really worked hard to anticipate issues with my next application before submitting. Made it in ten or so days in one pass. Both applications are rather benign without anything controversial which probably played into this.

    I feel fortunate that they made it through relatively easy. I hope the game I'm developing goes as well. The oblig plug -- GMToolKit (RPG helper) and FW Calendar (Calendar with fiscal weeks displayed) are the applications.

    --
    I love the sound of distortion in the morning -- webcommando
  11. Let me try to understand something by Orion+Blastar · · Score: 5, Informative

    is your APP pure HTML, or does it contain JavaScript code like the PhoneGap project uses?

    If it contains JavaScript code, maybe Apple didn't like the way it was designed as it was similar to the old PhoneGap code they rejected, did you update your JavaScript code to the new PhoneGap codebase that was approved, or did you remove the old PhoneGap code with different JavaScript code?

    If your APP is HTML with JavaScript, Apple might have an issue with that. Sometimes JavaScript code can do nonstandard things that locks up a web browser or causes incompatibility issues. When I programmed in JavaScript I had to keep changing my code to changing Web browser standards, as soon as a new web browser was released, the way JavaScript worked would change and I had to change my code to accommodate it.

    If it is pure HTML, there might be tags you are using that Apple finds non-standard and thinks they might run exploited code.

    Here is a story on why Apple rejected the PhoneGap framework in the first place.

    Yeah I know, Apple wants to protect their users and set quality control standards high, and they include such rules as not using third party or open source frameworks, and Apple does not want the APP modified on the iPhone after being bought, Apple does not want the APP to run on a competitor's phone (HTML and JavaScript applications can easily be ported to another format), and PhoneGap type applications may not work on future iPhones, it is all a matter of risk management. Apple does not want to risk anything so it sets strict guidelines on what an iPhone APP can and cannot do.

    Yeah ironically Apple has exchanged freedom for security, and in doing so shut out developers like yourself. Even something as simple as HTML code and/or JavaScript has to be reviewed and has a possibility of being rejected. It goes against the open source philosophy, I don't know what else to say. Even Microsoft is not that strict on what can and cannot be done on their smart phones or Windows OS. Except to say that Microsoft's products are more prone to exploits and viruses and other malware, and maybe Apple is doing this kind of thing to prevent exploits in their iPhone?

    --
    Remember, Slashdot does not have a -1 disagree moderation, and no, troll, flamebait, and overrated are not substitutes.
  12. Over 65,000 apps, you say? by Jay+L · · Score: 4, Funny

    That's a suspicious number... Clearly Apple must be rejecting so many iPhone apps because the App Store database can only hold 65,536 apps!