I switched from an iPhone to a Nexus One and haven't regretted it since. So many reviews seem to miss the point, in my opinion, because they focus too much on "X has faster processor" or "Y has better touchscreen." The Nexus One is nothing like the iPhone. They are very different devices. .
I could talk about the Nexus One hardware vs. the iPhone hardware, e.g. the Nexus One has a better camera, the iPhone has a better touchscreen -- but it's not really about that. It's about Android 2.0 vs. the iPhone OS.
There's two main differences:
- Data model: Computer-Centric vs. Cloud-Centric
- App model: Separate Apps vs. App Ecosystem
Android and the iPhone OS have entirely different models for your data. The iPhone follows the Apple model -- your iPhone is a mirror of your (Apple) computer, just like your Apple TV is a mirror of your computer, etc... Even the iPad, which is supposed to be a netbook alternative subscribes to this model and, to me, is its glaring weakness. Even reviews with lavishing praise point out this same issue. How self-sufficient can an iPad be if it is meant to be regularly synced to another computer?
In the Apple model, if I want to sync a Google contact, you sync your computer with your Google contact, then you plug in your phone, and it syncs. I hate this model -- I only plug in my phone once a month (at most). If you look at Pages on the iPad, review after review complains about the 7-step process it takes to 'sync' a document with your computer.
Android follows the cloud model. When you get your phone, you enter in your Google accounts (and even Facebook), and everything starts syncing against that. My Picasa photos immediately appeared in my Gallery app. The same goes for starred location in Google Maps, contacts, and my even my search history -- great for auto-complete! The best is Google Voice, which you can have take over your phone. When someone leaves me a voicemail, I can get a text message with a transcription, listen to the voicemail in a Web browser, or read it in my e-mail. With the cloud, access is everywhere.
The other difference is the app model. Android Apps can do more, like replace your keyboard, customize your homescreen, or change your phone dialer. They can also hook into one another (and often do). I've downloaded a widget that puts my calendar agenda directly on my home screen (very useful). When I play music in the music layer, Last.fm can listen in as well and update my recommended channel. Similarly, apps can plug-in to the main Gallery app, so I can now upload directly from the Photo app to Flickr, Facebook, Twitter, etc...
The Apple experience is more siloed. If I want to upload to Flickr, I switch to the Flickr app. If I want to upload a photo to Facebook, I have to switch to the Facebook app. It's cleaner, but it's more time-consuming.
Each app runs in its own sandbox, never to interact with another. It's also inherently single-tasking -- the "multi-tasking" in iPhone 4.0 pre-specifies what can be multi-tasked. This preserves certain performance guarantees for each app, but its a limitation that expresses Apple's approach to apps: apps can do what Apple says they can do, and nothing more.
No iPad for me
There are several reasons for me not wanting an iPad: the Apple App Store offends my software development principles, I don't see it being that useful with what I already own, it's terrible for real writing tasks, etc... But ultimately it's that I grew tired of Apple's approach to devices. I have an Apple TV, I had an iPhone from the first day they were released, and I have a MacBook Pro. But I've grown sick of Apple's ecosystem. It's all consumptive.
Each device assumes another Apple device that you must own, hooked into an Apple-run online store, because the only way Apple knows how to share data is with Apple. Apple simply doesn't understand the cloud, or doesn't want to, because the cloud is bigger than they can control. When they do support the "cloud", it's only their MobileMe cloud, which you have to pay for, and offers less than Google's free cloud.
Android Ain't Perfect
There's definitely room for Android to improve. The back button is a mess, there are some bugs here and there, and it needs a little more spit polish. It terms of stability, it's a bit better than the iPhone 2.0 OS, a bit worse than the current iPhone OS. I have plenty of memories of having to hard reboot my iPhone on a daily basis, and I've had to pull the battery out of the Nexus One from time to time. It's clear Google had to play catchup, but the iPhone 4.0 announcement puts Apple in the position of trying to reach parity. When Apple gets there, they may do it with more polish, but my Android phone already does it, which is why I switched.