Paul perfectly covers the bases and pretty much describes my feelings to a tee.
My experience with the AppStore has definitely tarnished my opinion of Apple. Before working on the iPhone, I could (and frequently did) with no reservations whatsoever rave about how wonderful Apple was and how great they treated their developers.
While my iPhone development has been (in my consideration) highly successful (thank you, loyal users, one and all!) there have definitely been days I wonder why I spend a third or more of my life lately working on BookShelf. The money’s nice, no doubt (again, thanks!), and I’m currently typing this from my new home, the down payment on which was paid entirely from AppStore proceeds.
Money notwithstanding, I have trouble summoning the same rave reviews that once so freely came for Apple and their development ecosystem. Often is the time where during lunch at $DAY_JOB, I find myself ranting about some recent roadblock. My co-workers (mostly Linux & a few Windows heads) occasionally call me on it. I still have the Apple fanboi gene that makes me want to backpedal and make apologies; but they’re hollow, and lately I don’t even bother. Apple’s second biggest strength to me was always how well put together the development environment was and how easy it was to build compelling apps using it. (The biggest strength was of course the well-integrated, JustWorks™ platform they provide.)
Working within the restrictions of the AppStore is outright frustrating, and nobody benefits from it. Crap apps still infest the AppStore. Several high-profile security related issues in less-than-legit apps have hit the media and even the courts lately. I spend inordinate amounts of time tip-toeing around functionality that I *know* the phone has (Apple’s apps do it, and class-dump tells me so), but I can’t touch them because it’s “undocumented.” And worst of all, buggy, outdated versions of BookShelf sit in the AppStore for weeks or months at a time, in part because the review process takes so long, and in part because I find myself rolling one development cycle into another without even bothering to submit since it’s such a pain. I’m honestly not prepared to run branched development while waiting for an approval, but neither can I sit on my hands and do nothing for the month it typically takes to get BookShelf approved. I’ve had cycles where the app was rejected, and I end up just ignoring it and continuing on for the next cycle since I’m already too far in to unroll my changes. Yes, I should learn not to fear branching, but still…
Paul sums up nicely the change in attitude towards Apple describing his feelings on buying the latest iMac recently:
I felt the way I’d feel buying something made in a country with a
bad human rights record. That was new. In the past when I bought
things from Apple it was an unalloyed pleasure. Oh boy! They make
such great stuff. This time it felt like a Faustian bargain. They
make such great stuff, but they’re such assholes. Do I really want
to support this company?
The last few weeks have seen several high profile developers call “I quit!” over various AppStore frustrations. Now don’t worry, because I’m not quite ready to throw my towel on the pile yet. Still, the platform can only suffer when hugely talented, highly dedicated, long-time Mac developers decide that Apple’s phone is just too much trouble to work with.
There’ss no shortage of good, easy to implement suggestions out there that could fix many of the AppStore’s problems. One of my personal favorites is the idea of building a “reputation” with a series of good releases and simplifying or omitting entirely the approval process for those apps, subject to strong sanctions for abusing that trust. BookShelf’s been in the store since day one, and as far as I know, it hasn’t ruined anyone’s phone…