Nothing in Android makes sense except in the light of its original vision
In 2008, I met Rich Miner, one of the founders of Android. It was during a pivotal time in the mobile industry’s transformation from providing the “baby internet” on feature phones to the “real internet” on smartphones, and the first Android device – the T-Mobile G1 – was just around the corner. The iPhone had only been shipping for a few months. And RIM’s BlackBerry was still the most popular smartphone in the United States.
In a short discussion, Miner told me the grand vision for Android: it would be a solid foundation for mobile phones, based on Linux, that would work with many types of hardware, and it would be fully customizable. It would provide a “basic user interface,” he said, that “could be changed by the carriers and manufacturers to fit their goals.“ The hardest part of building advanced mobile phones, he reasoned, was writing the lower-level software that the operating system uses to communicate with the hardware, including the radio baseband and audio/video controllers, so Android’s goal was to solve those tough engineering problems really well. The carriers and the manufacturers would then be freed up to focus on differentiating the experience at a higher level, at the user interface and experience level.
What Miner and Google gambled on, and it seems bizarre in retrospect, was that the carriers and the manufacturers would be good at customizing and improving the user experience of the base operating system. At the time, that gamble would have made some sense; if you went to the carriers and manufacturers in 2007 and asked what they wanted, they probably would have described exactly what Android had become by 2009. Unfortunately, while Android itself is a huge achievement and a popular piece of software, the customized interfaces added by manufacturers are, for the most part, horrible. They are poorly designed, they slow down development, they prevent quick software updates, and they lead to countless annoying divergences in the platform that are difficult for app developers to test against. These things are Android’s biggest weaknesses.
When viewed in the light of Miner’s original vision, a lot of the software design decisions that were made during Android’s development make a lot more sense. For example, as a designer, it seems to me that many egregious errors were made in the fundamental design of Android’s presentation layer. On all major competing platforms, scrolling performance is given priority over other tasks by the operating system and is accelerated by the GPU. This is important because the interfaces on touch screen devices are treated as tangible, physical objects by the human brain. When a physical action you make with your finger does not lead to the response your brain has learned to expect in the physical world, something feels very wrong. It doesn’t feel genuine.
Android does prioritize scrolling to some extent now, but it still doesn’t feel as smooth as it does on iOS. An inordinate amount of time went into perfectly designing the physics simulations performed by iOS’s elastic scrolling and other touch event responses. Android’s initial development clearly did not include this attention to detail, because issues regarding the user experience appear to have been beyond the scope of the original vision. As a result, the fundamental engineering choices made during the initial stages of building Android’s interface layer were flawed. This is why Android feels "wrong” to so many people.
Incredibly, despite the mobile device industry experiencing a complete revolution during the past four years, the Android of today is still precisely the operating system Miner described to me in 2008. It has a solid foundation, it can run on a plethora of hardware, it is fully customizable, and the carriers and manufacturers have attempted to differentiate it at the user interface level. It is astonishing to me that Google has held fast to the original vision for the platform considering the poor quality of most Android phones and, far more importantly, most of the apps.
I hope things change, and that Google removes some of the freedom manufacturers have to pollute the base interface in Android, but given comments by Android’s head of design, Matias Duarte, and Google saying, “We have no desire to restrict manufacturers from building their own themed experience across their devices,” that seems unlikely.
You should follow me on Twitter here.