I have been running iOS 5 on my iPhone 3GS since the developer release of the GM seed. I upgraded my first generation iPad today. To summarize my experiences:
- iOS 5 on my 3GS seems to be decent, though I’ve noticed reduced battery life even with most of the over-the-air stuff off.
- iOS 5 on my iPad has been a process, with the upgrade failing, the sync taking hours, and iTunes claiming that the device is full of “other” data. When I’m done with this post I’m going to go nuclear on it.
I do major iOS upgrades on my devices with a particular routine. First, I make sure I get a good backup, and I go into the iTunes preferences, under “Devices,” to confirm it. Second, I do a complete restore, to wipe everything out and start again. I’ve eventually had to do this for every major upgrade, so I might as well do it to start with.
On the iPad, the restore failed part way through, leaving it in recovery mode. The error, “An internal error has occurred,” has been explained by Apple support as being a symptom of their servers being overloaded. That kind of error is the type of message a programmer puts in their code as sort of a last ditch you-should-never-get-to-this-section-of-code error. Has Apple even tested the upgrade with any of the obvious failure modes? Have they heard of return code checking, exceptions, or error handling in general? If iTunes is any example the answer is no. It’s ridiculous to think that a process, so dependent on network connections, can’t gracefully handle a server overload situation and kills my device in the process.
Terrible error handling in iTunes makes me wonder how the iCloud features will end up working in practice. The fact that you can’t currently delete a photo from iCloud says the experience won’t be positive, at least for me. Left your phone out and a friend took a photo of something inappropriate? Just want to delete a bunch of blurry photos? Tough. Resync everything. While I’m a supporter of getting a product out the door this is pretty basic functionality that’s missing. Will it get cleaned up & fixed? Absolutely. I just wish I hadn’t been given an opportunity to question it.
In principle I like most of the new features in iOS 5, as sort of the inverse of “death by a thousand cuts” — lots of great little improvements. Cleaning up the notification system is wonderful, and long overdue. The camera app using the volume control is nice, and the personal dictionary for autocorrection will be a godsend. I’ve always wanted to put Carlin’s seven dirty words in the damn thing.
Vibration customization, in the accessibility options, and the ability to record custom vibration patterns is neat. In fact, there’s a lot of interesting stuff in the accessibility options (white on black!), and lots of new options for everybody, like gestures. Lighting up the LED flash for incoming calls will be extremely useful to me. There are lots of times I’d like a notification that is absolutely silent. And, holy crap, they finally let you use custom sounds for text messages! I’ve always wanted to set mine to “Incoming Subspace Signal.”
iMessage, oh iMessage, how I love thee. First, you will let me get some messages when I’m in the basement or the data center, connected via WiFi but with no phone service. Second, you’ll probably mean I won’t have to pay for an expensive text messaging plan anymore. That’s chapped my hide since I found out what the carriers are charging $0.20 a message for: use of a pre-existing side channel in the cellular signal. Third, you’re seamless, which means I won’t have to configure anything on my non-technical friends’ iPhones, though I worry that people will be able to remotely exploit the knowledge of what phone I have. And last, you let me turn off “read” notifications. I don’t want people knowing when I read their message, because they misinterpret it and take it personally.
The biggest new feature, though, is over-the-air updates, despite the potential for more carrier whining and rate hikes. Millions and millions of iDevices out there, with just a small fraction getting updated because it’s something people don’t care about. Security problem in iOS? Bug fixes? Changes? Yeah, good luck getting people to update. My hope, though, is that it enables Apple to switch from the single-big-update model they have, which we can see is full of problems, to a model where they can do smaller releases continuously. Release iOS 5 today, then iOS 5.1 with iCloud for documents and reminders in a month, then iOS 5.2 with iCloud for photos, then iOS 5.3 with iTunes Match, etc. Better testing, easier rollouts, fewer problems and fewer support calls because they practice it more, and have time to do it right.
That’s all I think Apple needs, after all. A little bit more practice to make people like me believe it’s magic.