I just installed Android Gingerbread (2.3) on my HTC Droid Eris. To understand the significance of this little achievement, we need to examine the wonderful world of smartphones, and why the market insists on doing a half-assed job.
The Eris was released November 6th, 2009. In the phone world, especially now that the smartphone market is heating up, this is somewhat ancient. It’s second-generation in a fifth and sixth generation world. It will never “officially” have anything higher than Android Eclaire (2.1). I’ve already been running Froyo (2.2) for months. It fixed a ton of bugs plaguing the official release, and improved the overall experience drastically.
How is this possible? Well, since Android is open-source, developers all over the world have been contributing to its advancement. This ancient phone, long since abandoned for the likes of the Droid Incredible and the upcoming Thunderbolt, has its own dedicated developers. There are several ROMs to choose from. Do I want to keep HTC’s Sense? There’s about half a dozen ROMs that use it. How about Froyo? At least that many. Back in December there was one Gingerbread release. Now there are about five, though only three are making any steady progress. I’m running a build of GingerShedBread released just yesterday. I only installed that because the developer of CELB Froyo has gone MIA for about a month, and I figured it was time to try the upgraded OS.
Why is it that a bunch of unpaid dudes can come out with OS ROMs faster than paid manufacturers making the damn phones in the first place? How can some guy who goes by workshed, and another who prefers the moniker tazzpatriot, whip out updated OS releases for a phone all but abandoned by its carrier? And most damning, why are brand new phones which haven’t even been released yet, still using Froyo? The Motorola Bionic, the first dual-core phone in Verizon’s lineup will be Android 2.2. The Thunderbolt? Android 2.2. Is this some kind of joke?
It’s also a foregone conclusion at this point that Android 2.4 will be out some time in April, mostly due to support for dual-core phones. Some like to speculate the lag is because manufacturers want their bloatware and skins on the OS, so they can offer added value. And of course, porting these apps and skins to a “new OS” is what takes so long. But that my friends, is unmitigated bullshit.
Android is a glorified Java application that runs on top of a Linux kernel. Lots of apps on the market have minimum OS requirements, after which they work just fine. One of the reasons a guy in his mom’s basement can release these so quickly is that, once a kernel is compiled for the phone, the rest of the OS works fine. The manufacturers already did the hard parts in porting the kernel and providing necessary drivers for the hardware in the phone itself. After that, it’s beta-testing for glitches. It’s not like Android changes its API with every release. HTC Sense and Motorola Blur will work just fine unaltered on 2.3 or 2.4. If they want to take advantage of the new API calls and features, they can send out OTA updates later.
Do I have to live on the bleeding edge? No, not really. Sure the Eris works better with the new versions because more attention is given to performance, but Froyo wasn’t a terrible OS. Why the push, then? Why not? The whole point of being a manufacturer or a carrier is that you have leverage the average person doesn’t. You can partner with companies and get exclusives, and in some cases, boast early releases nobody else has. You can pay whole teams of developers to build custom modules months before official releases. Smart companies would pay one or more of the XDA developers for each one of their phones in perpetuity, because the relative cost is negligible, and the customer goodwill for doing so is priceless.
EnterpriseDB employs several of the main PostgreSQL core developers. In doing this, they secure for themselves, features that may eventually make it into the official release. They leverage the experience of known entities to instantly attain brand recognition and lead the way in new functionality. Canonical did this with Linux to produce Ubuntu, which is the most popular Linux distribution in the world according to Distro Watch. Handset manufacturers could do this, but they don’t. Phone carriers could do this, but again, they either have no incentive or desire to do so. And why should they, when they already make dump-trucks of cash using current standard operating procedures?
I just wish that one… just one company would buck the trend and produce a viable and truly great entry in the handset market. GeeksPhone is a fucking relic compared to current hardware. Google’s Nexus is a single-carrier pipe dream. Though with Verizon rolling out LTE—which is really GSM redoux—this may be less of a problem in the near future.
Either way, Android proves just why it is the superior OS. Even when the carriers and manufacturers drag their feet, the XDA developers and similar groups can pick up the slack. This is not possible with iOS, Windows 7, WebOS, Blackberry, or any other phone-based OS. I’d like to claim people are tired of having decisions made for them and will flock to Android, but I can only cite my own experience in this regard. About the only real complaint I have about Android is that it’s written in slow, memory-hungry Java. Yuck.
It’s still the best choice for tinkerers, and I for one, give a tinker’s damn.