This isn’t really news for anyone even vaguely familiar with the mobile space, but here’s one image that reflects what I believe is by far the biggest problem with Android, straight from the developer’s website.
The vast majority 90%+ of the Android users out there use versions of the OS that are more than one year old and some 30%+ use versions that are 2 years old. This is a much bigger problem than the multiple devices Android runs on.
Your task, should you choose to accept it, is to explain to me why is it that I have a developer phone, but I do NOT have the latest Android version (released about a quarter ago) on it, when there are consumer phones on the market running this version and I am expected to develop for it.(Note: if you were planning to tell me that I can build it and install it myself, you go outside right now and think about what you just said).
Seriously, I do not understand the logic behind this. Last I checked, Google said they were waiting for feedback before deploying it to the Nexus S. Feedback? What feedback? Are you waiting for feedback from the users before you deploy it to developers??? Where’s that double facepalm picture that I have….
I’m upset about this on multiple levels. As a developer, I am upset that Google isn’t providing me with the latest version of their system and especially so since there are so many important changes in ICS. I should have been using this from day 1 so that I, as an USER, get the feel for the new UI and start thinking about Android apps in this manner. Yes, I can read the design guide and the numerous blog posts, but it would be even better if I could observe the new application flow 24/7. It’s one thing to ask me to not think about a “Back” button anymore, and its’ very different to actually show me why and how, after three years of hitting that button all the time.
As a consumer, I am upset that I am not getting my expected features and perks from a product that I have purchased. A significant part in my decision to buy the Nexus S was that I was led to believe I’ll always be the first to get updates on the firmware (as opposed to the other phones where I have to wait for the manufacturer to prepare the update and it can be seriously delayed). At this point, my girlfriend’s jailbroken ancient HTC Hero is running a slightly newer minor version of Android than mine. My mom has an ICS phone! And me, the dude with the developer phone? I am waiting, stuck in the past, but expected by the big G to create solid applications for this new platform that I am not seeing, so they can win their battle with the iPhone.
As a blogger, I am seriously upset that people are suggesting that it should be expected that I can build it myself from the source code. That is not ok and it’s not the right approach that the main competitor to the iPhone should have. Yes, I can build ICS myself and make an emulator or put it on my phone, but why should I? Why should I do it, especially when I have a developer phone? And why should everyone be expected to do it? Maybe some amateur devs don’t have the knowledge or resources and… they shouldn’t! You shouldn’t have to care about the source code at all if all you want to do is build a simple app for the market. Nor should you be expected to have the resources for building ICS which are not exactly lightweight (my fairly new MBPro doesn’t actually meet the recommended requirements). Unfortunately, more often than not, that’s what it comes down to with Android problems. I think that’s throwing many potential devs away and may be one of the reasons for the differences between the apps we see on iPhone and the apps we see on Android.
Or perhaps it’s all a big misunderstanding. Once could argue that Google is afraid to push out because of the problems they’ve seen on the Nexus S when they started doing so, three months ago. Perhaps those bugs are hard to fix. Maybe no one knows how. Maybe no one cares. Maybe they want every developer to buy the new Nexus Prime. Anyway, regardless of any other such “maybe”s, that doesn’t change my main point which is that pushing this new release to the developer phone doesn’t seem to be a priority. And that bugs me.
Anyway… rant’s over… In the mean time, I’ll start downloading the ICS source code. Because, while this may not be required for Google engineers, I really have to see it before I can develop for it.