Why I switched to Android... and back

While there are a few major smartphone platforms, a few different figures indicate there are two major platforms set for battle in 2011 – Google’s Android and Apple’s iOS mobile platforms.

Granted, while RIM could pull a turnaround with their tablet and OS this year and Microsoft could make a major push with Windows Phone 7, talking about those platforms would totally throw a wrench in my post here. Plus, I’d posit the Android/iOS comparison is the prominent choice facing smartphone shoppers this year.

Background

iOS
I have been using the iPhone OS iOS platform for about three years now. I jumped on the Apple ship with an iPhone 3G running version 2.0 of the platform. Since that time I have, like a good little nerd, upgraded to versions 3 and 4 of the OS with the purchase of an iPhone 3GS and 4, respectively. I have always used my iPhone for a mix of personal and professional work.

Android
Based on some of my longstanding qualms with the iOS platform, I decided to switch to the Android platform in December 2010. I went to Best Buy and procured a shiny new Google Samsung Nexus S on launch day. I haven’t used past versions of the Android platform; my Nexus S came with Android 2.3 (AKA gingerbread) which was the latest version of the platform available.

For the purposes of being clear and fair, I am going to keep my comments about the platform and the phone hardware as separate as possible. I will do a writeup about the hardware (Nexus S vs iPhone 4) later. Moreover, I will discuss the differences in carriers in another post since it’s not really related to the platform.

Where the Android platform shines

Customization
I agree with a friend that the level of customization in the Android OS is spectacular. Just about everything can be customized, tweaked, and modified. I think it’s somewhat fair to claim that the stock Android OS can do many things which an un-jailbroken phone cannot. For instance, I was delighted to discover that my phone could tether its cellular data connection via WiFi.

Notifications
This seems to be a pretty common point. Notifications on the Android platform are handled very well. Unlike the iOS platform, the Android notification system shows a list of notifications. Moreover, the Android system handles multiple notifications very gracefully and in a generally visually-appealing way.

Application ecosystem
I sincerely enjoy the fact that I can install damn near anything on my Android phone without having to jump through a million hoops. Moreover, I think the Google Market’s bill-to-carrier solution is an interesting alternative to the traditional Apple ID/Google Checkout solution. If nothing else, this setup will enable kids without credit cards to spend more of their parent’s money. From a business perspective, this is a great development.

Yet Android still sucks

There are many comparisons between the Android and iOS platforms so I am going to try and take a unique viewpoint here. Instead of using the magical word of fragmentation I’d like to discuss that while as cool as the Android platform may be, it still falls way short of the iOS platform as of version 2.3.

Development
I have developed on both platforms; while XCode and the iOS SDK can really drive me nuts, their shortcomings pale in comparison with the annoyances of Eclipse and the Android SDK. For instance, say you code a hello world example application. Easy enough. Ok, launch it in the XCode simulator. Simulator boots quickly and runs app. Try the same thing in Eclipse. Yeah, enjoy waiting ten minutes for the Android simulator to boot. Not that bad? Ok, add a button with an event tied to it. Have fun waiting some more for the Android simulator to calculate pi to a billion digits. These development annoyances are based on my experience. From what I can tell, piracy on the Android platform is a huge problem at the moment. Ever wonder why Angry Birds is ad-supported? I am sure that indie developers love Android on the basis of principle but once they have to actually support their copious PBR and Hot Pocket consumption with actual income, I’d be curious to see how interested they are in the Google App. Market.

Customization
I agree with many that Android is very flexible without the need to jailbreak. Awesome! Let me take a screenshot of my customizations! Oh, wait, I need to have the SDK installed or root my phone? But, on the iOS you just press two buttons… See my point here?

Customization is great but I am also a business person (despite the fact that I dress like this for work sometimes) and I have to ask how that feature helps my product ROI. Put simply:

Is the added “customization” functionality of the platform not only outweighing development costs but also increasing my profit by adding new customers?

I am going out on a limb here by saying the answer is probably no at this point. Don’t get me wrong, the Android platform has a lot of potential but I think the customizability doesn’t apply to your average customer. For instance, I think the typical customer is much less interested with changing their keyboard as they are concerned with the UI colors of their phone. This is where Android could have a huge win. When someone first starts their phone and Android shows the cute setup screen asking people to tie their phone to their Google account, it also allow them to customize the UI (colors, background, live wallpaper, etc.) of their phone. Better yet, as a businessperson, tie to third-party vendors who pay for a sponsored spot in the phone setup screen. FFS Google, I know you can do this and I know you want to; just do it. People would likely be more inclined to buy a spiffy new live wallpaper when they setup their phone. Moreover, you can get them into Google Payments right there and then!

Alas, the customizability of the platform, I think, will be abused by carriers. I am less concerned with fragmentation and more concerned with what carriers will do to strong-arm Google and the Android platform in the long-term. I am surprised nobody is asking whether Google and HTC will eventually turn into frenemies. I know normatively-driven software developers like to harp on the “walled ecosystem” and “draconian” model used by Apple; to them I ask – how’s Linux doing these days as a commercial product? I know the world should work one way but the reality is, it just doesn’t.

UI hell
Many Android applications have terribly inconsistent UIs; while geeks can live (or like) this fact, the average customer is likely harmed by the Android UI inconsistencies. I think the Twitter application for Android is a good example of what applications on the platform should be – it’s clean, efficient, and elegant. Problem is, most third-party Android-only applications are designed by developers for people like themselves.

My team never likes hearing this point but the way we, as engineers, look at software is very different than how average users evaluate and use software. The added flexibility of the Android UI allows developers to do exactly what they want. That’s the problem. Here’s an example:

Try using an iPhone and then an Android-based phone. Open an application and navigate. I * guarantee * you’ll be reaching for the UI Navigation Bar at the top of the Android phone without knowing it. Having the “back” button in the same spot in the iOS is a low-visibility high-impact function.

The software, all-in-all

Android is a neat platform; I am curious to see where it goes. Specifically, I am really interested to see whether Google rolls the Chromium OS into the Android platform. As a basis of comparison, Apple ditched the OS X-lite powering old Apple TVs for iOS. I suspect Google will, with time, do the same.

Android gets a lot of press in geek circles because it’s geek chique. That’s great and all but the platform really only targets a small and generally unprofitable market. Moreover, the awesome Android features, such as notifications, will be much easier to add in as a feature to iOS than it will be to revamp the core of Android to standardize the UI of the platform.

Finally, I know there may be nerd rage at this point. Fair enough. Just ask yourself – is any large company really going to embrace a mobile platform which needs anti-virus scanners or has no oversight of application security? Likely, no. The Android platform, at this point, is mainly a non-enterprise platform. On the other hand, Apple is putting increasing effort to bring iOS into the enterprise market. Given the fact that many smart-phones are for work, I think this is an important and often overlooked point.

tl;dr

Android is “technically” cool but iOS is a better business model. The perceived benefits of the Android OS are possible downfalls of the platform as well. Maybe I am an uncool nerd but, well, Android kind of sucks.