Alongside multitasking, my other favourite aspect of Android it its immense flexibility. When you have an iOS device or a Windows Phone 7.5 phone, you're pretty much locked into whatever Apple and Microsoft think is right, without the ability to tweak the user experience to your own needs. Sure, you can jailbreak your iPhone, but this makes Apple think you're a criminal, and they'll cut you off from operating system updates. It's a big hassle.
On Android, none of that. Android's flexibility permeates every aspect of the operating system. For the true hackers among us, you can change the code to fix your pet bug or add a feature Google won't add (or whatever). One notch above that, you can take AOSP and build your own ROM, with your own optimisations and preferred applications.
This flexibility extends to those of us who aren't hackers, or who don't have the time and/or willingness to dive into actual code. There's an immense amount of custom Android ROMs out there, ranging from true, unaltered AOSP experiences to heavily modified ROMs like the beautiful MIUI. If you're not happy with the stock ROM on your device, there's bound to be one out there that's more to your liking.
If we go one notch higher-level, you can swap out Android components on the fly by installing alternatives from the Android Market. For instance, I replaced Samsung's stock keyboard with the highly configurable Swiftkey X. Swiftkey X allows me to do something no other smartphone keyboard can: work with two autocorrect/suggest dictionaries at the same time. Instead of forcing me to switch between English and Dutch dictionaries all the time (such a major hassle I normally just turn off autocorrect/suggest altogether), Swiftkey X just loads both dictionaries at the same time, giving suggestions and corrections for both languages at once. This is such a major feature for multilingual users like myself, I now wonder how in the heck I managed without it.
This flexibility extends to pretty much all components of your Android phone. Want a different launcher? Go ahead. Dislike the stock lock screen? There's enough choice in the Market. The camera application too limited for you? Install another. Want to switch back to the default? No problem.
Of course, as the best football player in history famously said, ieder voordeel heb z'n nadeel, and this applies to Android's flexibility as well. Ordinary users should probably stick to the stock applications, but there's nothing preventing them from exploring alternatives in the Market. If they do install a, say, different image viewer, they'll be confronted with the "open with"-dialog, which, in all honesty, isn't particularly user friendly. Its biggest weakness is not giving any hint as to what type of file, exactly, is being opened; this can be problematic even for advanced users like myself.
Still, this is a small price to pay for having total control over your device. This is all part of what I alluded to at the beginning of the review: Android allows you to make your device your device, whether it be trough editing the code, installing a custom ROM, swapping out components, or going crazy with highly configurable widgets. If there's one thing I've learned over the years, it's that this is a major asset to many people - and not just geeks and nerds.
Carriers and device makers would be smart to work with this crowd, instead of against it - which brings me to the next chapter.
Google, get your #*$@ together
I don't think this chapter even needs a specific headline, since I'm pretty sure we all know what I'm talking about. Ice Cream Sandwich was released exactly two months ago, and yet, there's not a single device out there other than the Galaxy Nexus which runs it. Google's utter failure in getting its partner to provide timely operating system upgrades is Android's biggest weakness, and sadly, a solution doesn't appear to be in sight.
The way I see it, Google roughly has three options. First, they could continue to develop in secret like they do now, but instead of keeping all hardware vendors in the dark, they should allow hardware vendors to join in on the fun, with the requirement that they work on 'porting' the new release to their devices as it is being developed. This way, hardware vendors can start porting the new releases much sooner.
Second, they could simply drop the development behind closed doors altogether, and go full-on open development. This would give many more parties a say in the development process, and since all development is open, device makers could start working with pre-releases from day one. This could lead to quicker updates, but would require active effort on the part of the device makers.
Third, and this is probably the best option, Google should focus on making more and more parts of the Android operating system upgradeable through the Android Market. They already do this with, say, the Market application anyway, so it would make sense to extend this policy. Sadly, this is also the option that would take the longest to implement, and I'm not sure if there's any effort under way currently to go down this route.
All these solutions require a lot of effort from all parties, and to some extent, mean a rethinking of what Android is supposed to stand for. It is clear to me, however, that the way it is now is not the way to go, and if all the parties involved truly have consumers' best interests at heart, they should start hammering out a plan to fix this issue yesterday rather than tomorrow or even today.
Google, get your #*$@ together.