From iPhone to Android

A few weeks back, I decided I needed to replace my aging iPhone 3G.

I got the 3G when it first came out. My roommate at the time and I spent quite a while waiting in line in front of the Apple store, only to be told when we were two places from the door that the stock for the day had been sold out. t took several more days of waiting in line before we were able to get our hands on one.

The iPhone 3G was the first smartphone I’d ever owned. I’ve been a cell phone user for quite some time, since the days of giant handsets with one-line LED displays, but I’d never owned anything even remotely approaching a smartphone before. For me, the iPhone was a game-changer. I have a notoriously bad sense of direction–it is not impossible for me to get lost just a few blocks from my home–and the GPS feature alone in the iPhone was a huge improvement in my quality of life.

Having real Web access was also a big deal. I do a lot of IT work, and the ability to get a call from a client and check the client’s Web site right there on the spot even if I’m not in front of a computer is huge.

But over the past few months, the 3G hasn’t been cutting it for me. The GPS is getting a little wonky, and the battery isn’t holding a very good charge any more, and the iOS 4.2 update made the phone feel a bit sluggish. On top of that, the amount that AT&T was charging me every month was enough to give me a nosebleed.

I spent a few weeks looking at several options: upgrading to an iPhone 4 and staying with AT&T, upgrading to an iPhone 4 and jumping to Verizon, and getting an Android phone.

Then Google announced the open hardware development kit for Android, and that significantly tilted the balance toward Android. The Google hardware kit for Android phones is based on the Arduino prototyping board, which I already have experience developing and programming for.

I went into T-Mobile and found that I could save quite a lot of money every month with a contract from them if I went to Android, so that’s what I did.

The phone I got and will be talking about here is the HTC Sensation 4G, running Android 2.3. It’s been an interesting, and at times rough, transition. I’ve been surprised by a number of things about Android, both pleasantly and unpleasantly.

But before I get into that, let me talk about what Android isn’t.


Android isn’t a religion. To hear many folks talk about it online, you’d think that the choice of cell phone operating systems was a religious or philosophical choice. Android, we’re told gravely, is “open.” The iPhone operating system is “closed.” To use Android is to celebrate freedom and democracy and other wonderful things; to use an iPhone is to toil under tyranny and totalitarian rule.

It’s hooey, of course. Android isn’t open, at least not in the way the religious folks say it is.

Oh, it’s open in the sense that the source code is available, kind of, eventually, when Google says it is. This sort of freedom isn’t really equal, though; Google decides who gets it when, and which partners get to have it first.

But the thing to remember is that from the perspective of the folks who make cell phone software, you aren’t the customer. The handset makers are the customer. Android is open–for them. You, as the person who buys the cell phone, get exactly as much freedom and openness as the handset maker lets you have.

On my HTC Sensation, for instance, the cell phone bootloader is locked down tighter than a nun’s–ahem. It was possible, if I wanted to, for me to jailbreak my iPhone. My Sensation? Nope, no can do. Not even the Cyanogen team has figured out how to root it yet.

The same is true for some other Android phones as well. Supposedly, HTC has had a change of heart and will be unlocking its phones in the future. It’s not clear whether this will apply to me; I’ve read one article online that says all HTC phones will be unlocked, and another that says only HTC phones not tied to a particular network or under contract with a particular carrier will be unlocked.

On the iPhone, the fact that I could, if I chose, jailbreak my phone never mattered to me; I never saw any good reason to. With Android, the fact that I can’t jailbreak it is kind of a bother, and that brings me to the second issue with Android.


With Android, we’re told, there is more openness in software, too. Android programmers do not have to go through any particular approval process to get their apps on your phone. The iPhone App Store is tightly regulated; apps that Apple doesn’t like aren’t available. The Android app store is an open bazaar; anyone can make any sort of app at all.

That’s not 100% true. The carriers have coerced Google into removing apps they didn’t like from the Google app store.

More to the point, though, the openness is really more for the handset maker’s benefit than for yours. With Android, we are back to the bad old days of Windows XP and Windows Vista, where each computer maker tended to stuff their computers so full of demos and third-party software and their own support applications that the term Craplets (crap applets) was devised to describe them.

Most computer manufacturers came to their senses, eventually, and cut it out. It didn’t help that some of this crapware, like HP’s support application that they bundled onto their computers, contained security vulnerabilities that let hackers pwn HP computers.

But Android phones often come so stuffed with pre-bundled crapware that, in my case at least, nearly half the available application memory is occupied right off the bat. Worse, unlike desktop crapware, the Android crapware can’t be removed without jailbreaking the phone. I’ll talk about some of that crapware in a bit.

So my experience with Android has been interesting. In the rest of this post, I’ll run down the differences I’ve found between using an Android phone and using an iOS phone, and rate the quality of everything from the handset design to the apps to the user interface. If that sounds like your thing, click here to read more!