Engadget’s “recently highlighted”:http://www.engadget.com/2010/12/07/visualized-the-real-android-fragmentation/ just how fragmented Android is. Every single Android device has the buttons in different places. It’s impossible to provide a consistent experience if every single handset is different. The solution?
Make guidelines, not only for software developers but for hardware designers as well. A hardware SDK, if you will. Have a standard configuration of buttons, and make all hardware manufacturers follow it. They can change up the styles and designs slightly, but all handsets should have similar controls. This way, the buyers still have choices in what handset to use, but no matter which one they choose, they’ll have a consistent user experience. A standard screen size, or several accepted screen sizes would greatly simplify development as well. And to prevent users with older Android phones from getting a bad experience, add a minimum specs requirement to the Android Marketplace for each app, just like software for a PC.