I often hear that making things simple makes it easier for the user and that more choice give you more potential. This is true, but there is a fine line between making things simple and having to much choice. Because I am unoriginal, I shall use two popular devices, the iPhone and the Nexus One.

All software needs hardware, so let us start there. Both devices are very capable and have similar features, what makes them different are small but sometimes important features. Let's take the battery for example. On the iPhone the battery cannot be removed but it can be on the Nexus One. The average user will probably never remove the battery from a device or have a spare battery. But suppose you do want a spare battery, or need your battery replaced, only Nexus One users can do it easily.

Another good comparison is the choice to have one primary button on the iPhone versus four on the Nexus One. Once again, can you get away with one button? Sure it makes for an elegant design and makes things simple, but it also limits what you can do. How do you navigate "back"? Want to get to the "home" screen? Want a context sensitive menu (similar to a right click on the computer)? Both devices handle these situations well, but the path you take to get there can be longer or a lot shorter depending on the device you use.

These are only two very specific comparisons, and there are many more. Some people say the beauty in the iPhone is in it's simplicity. Others say the power in Android is in it's flexibility. Could the iPhone use more "advanced" features? Most definitely! Could Android be made a lot more "user friendly"? I actually can't wait for that day.

Each device has its strengths and weaknesses. The thing to remember as that users are smart, and they know what they want. These devices are supposed to be designed for their future users. Perhaps it is time that both companies started listening to their users instead of just assuming what their users want.