iOS can be frustrating for Android users

I want to respond to a couple of points on Rachid Otsmane-Elhaou's mostly excellent post, Why The iPhone Is Impossible For Me To Use.

I agree with most of Rachid's arguments. The iOS is clearly lagging behind Android with respect to integration between apps. I have seen a lot of speculation that XPC is the way forward for this. XPC.framework is private in iOS 6, and developers are hoping this will become public in iOS 7. It's used in iOS 6 to present the mail compose window in a separate process.

Using the Settings app to hold app's settings sucks, and most apps do ignore the Settings app, presenting configuration options in-app.

The Notification Center also sucks. A lot has been written about this. Grouping notifications by source rather than listing by time (as they are on the lock screen) it so frustrating. I expect Apple to fix this, they've been roasted so many times.

Two points remain that I have to point out as unfairly represented...

Apple won’t let you move certain apps inside a folder, so if you don’t read magazines or newspapers on your 3.5″ screen, you’re stuck looking at an empty bookshelf forever. Literally, you can’t remove it unless you jailbreak. I know, I thought the same too, you actually have to jailbreak your device in order to move an app icon into a folder (or totally from view).

"Certain apps", really? The only icon you can't move into a folder, other than another folder, is Newsstand, and that's because it represents a folder. I too wish it could be moved into a folder, or removed, but he's misrepresented the problem, quite unfairly.

Next, regarding background processes:

Things like this happen on android automatically. Apps can have separate background threads designed to do things like sync playlists, and upload photos without eating up your battery.

(emphasis added)

There's nothing special about Android that makes uploading photos not use battery life! Suggesting that background threads that upload photos don't eat up your battery is disingenuous at best. Uploading data is one of the most battery-draining operations you can perform on a smartphone.

If you've followed Apple's evolution of Mac OS X since the late 90s, you realize that Apple moves very slowly and deliberately when adding features. It can be frustrating, but it's almost always the wisest way forward, because once you release an API publicly, it's very hard to take it back without upsetting a lot of people. Apple has a very good track record here. Had iOS allowed unlimited background processing from the start, just because it was technically possible, they would have painted themselves into a corner they couldn't get out of. It takes time, some times years, to truly understand problems like this, and Apple is obviously determined to get it right.

Some examples of what happens when Apple rushes: Shake to Undo, Siri, iCloud, Maps.

Apple is learning from their users and from users of other platforms where more background processing flexibility is needed, and they're going to figure out how to provide that flexibility without sacrificing core usability and engineering principles. If iOS 7 doesn't pave a clear way forward in this regard, I will be very disappointed.

Written on February 8, 2013