I'd like for someone to please explain how an Android device doesn't "just work" right out of the box? That's the big argument? My Galaxy S2 worked within minutes of unpacking it, no problems at all (just like an iphone). It's like buying a car. With Apple, you have your car, it drives fine and looks just like everyone elses, and while it's pretty and shiny it looks like everyone else's iCar. If Android made a car, you could drive it out of the box just like Apple's, but you could also customize it and it would look and operate differently than everyone else's car - but - you don't have to. If you like your stock interface, be it stock Android, TouchWiz, HTC Sense, motoBlur (whatever Verizon's is..) it doesn't matter just leave it and have fun. If you want to root your phone and install a custom ROM you have that option.
Hearing some people talk you need an advanced java programming book just to get a Android device to turn on properly