42 comments

[ 3.6 ms ] story [ 99.9 ms ] thread
It was annoying enough that my computers eventually became too slow to run the newest versions of Windows/Ubuntu/Mac OS. I can't imagine the the frustration Android users must feel to be denied updates not because of obsolete hardware but because of handset and carrier neglect.

Google should step in and assure that all Android (tm) hardware can be updated to vanilla releases of the operating system without the need to be a technology wizard.

In some ways it reminds me of the very early days of PCs. An early consumer really needed to know their stuff when buying a PC back then.

Here's some common scenarios from back in those days:

- Buy a Tandy? Sorry, weird video card and sound controller meant limited software selection.

- PC Jr? Similar. But entirely different from the Tandy hardware. Even had a different kind of VGA and oddball joystick ports!

- 5.25" drive when the software is only in 3.5"?

- How about double sided disks?

- Double density?

- Oddball keyboard connector on your AT&T brand 8088?

- No Parallel port? No printer.

- No PS/2 port, but the needed trackball peripheral needs it?

- Weird IBM MCA slots? Can't get a sound card.

- Wrong UART chip? Stuck at 2400bps.

- Hercules graphics card? good luck with that.

All of these things were on systems that were "PC Compatible", and were advertised as such, but made owning and operating these things a serious pain. It was a loose "compatibility". If you had just the right hardware mix and match, and just the right drivers loaded in the just the right parts of memory, you could get 85% of the software to work.

Later software sent users through extensive setup processes with questions like:

"What DMA assignment?", "Hercules graphics?", "CGA, EGA? or VGA (not PC Jr. Compatible?", "EMS?" etc. etc.

It's not quite that bad with Android, it seems about 95% of the software I try on my devices works fine. But it's still kind of a pain, and useful to keep the old days in mind.

Ah, the good old days. Me thinks the kids these days are spoiled by all this "plug and play" nonsense and video game consoles that don't require any configuration on the user's part.

Some people seem to expect perfection out of the gate and aren't willing to give things time to settle down. Not everyone can or wants to be Apple.

Plus too many ignore the fact that, in the US at least, cell carriers are fully willing to do things for their benefit to the detriment of their customers.

Just like the old days, graphics are the big sticking point. Most current shipping devices have some mix of the following:

- Resolution:

* HVGA (mostly only low-end phones now)

* WVGA ("standard")

* FWGVGA (early Motorola)

* qHD (most high-end phones)

* WSVGA (7" tablets)

* 720 (Rezound, Galaxy Nexus, more soon)

* WXGA (10" tablets)

- Graphics

* Adreno (Qualcomm)

* GeForce (nVidia Tegra)

* ARM Mali (SGSII, less the T-Mobile USA variant)

* PowerVR (everyone else)

> Google should step in and assure that all Android (tm) hardware can be updated to vanilla releases of the operating system without the need to be a technology wizard.

Except that's not the case, because all Android-powered hardware require drivers which are not part of Android itself, and are bundled by integrators. That's one of the reasons why efforts like Cyanogenmod have "supported devices" and there's a different file to download for each device.

In fact, Apple's the same thing: each device has its own firmware because hardware differences mean they don't bundle the same drivers, even if 95% of the firmware is the same across the device without the last 5% it just can not work.

Google could change the licensing terms to require free distribution of the drivers.
Google is a lot of things, but one thing they're not is stupid: drivers control may not even be in the hands of the device builders, and is likely tied to agreements with manufacturers and parts providers.

This requirement would make support for any version of Android containing it dive into the ground.

I'm not sure why this would be a doomsday scenario. PC parts manufacturers gladly let you download drivers from their websites for use on any computer with a variety of operating systems.

In the end, don't parts manufacturers need Android more than vice versa?

> In the end, don't parts manufacturers need Android more than vice versa?

No, as far as parts go Android phones are run-of-the-mill smartphones (as are pretty much all others), it does not matter what OS they run the parts are the same.

Parts manufacturers only need smartphones being built, and that won't stop, Android or not.

Drivers aren't the issue, though. There are only a few OEM-provided SoCs used in name-brand, major-carrier Android devices, and OEMs already tend to end up supporting a few future Android versions with drivers for each SoC. Most Android phone boards lean relatively close to their SoC's reference design, and while building board support for each device certainly isn't trivial, it's far from a difficult task (hence the speed with which CyanogenMod is ported to and maintained for a wide range of devices).

The common bottleneck in Android devices isn't device drivers and board support - it's stupid manufacturer customizations which integrators don't want to spend the money to front-port to a new Android API. An obvious example is the Galaxy S ICS disaster - the Galaxy S hardware is entirely able to support ICS and will almost certainly be supported by CM, but Samsung simply don't want to frontport their integrator customizations to Android 4.0 for that device.

Google could certainly introduce rules surrounding upgrades and integrator customizations which would alleviate the upgrade issue - CyanogenMod is proof of it. Sadly, that's not Google's goal, so the wide variety of Android versions in the wild will persist for the foreseeable future.

If Android were a true open source project instead of a sequence of huge code dumps it would be much much easier and less expensive for OEMs to track the changes and update their branches.

Too bad it can't be, for a few non technical reasons.

> Drivers aren't the issue, though.

Drivers are most definitely the major issue as far as ChrisLTD's suggestion goes.

> Most Android phone boards lean relatively close to their SoC's reference design, and while building board support for each device certainly isn't trivial, it's far from a difficult task

Nobody (least of all me) says it's a difficult task. But it's not a task Google can achieve, from Android, by bundling every single SoC driver under the sun.

I'm not sure what you're trying to reply to, but it does not seem to be my comment.

> The common bottleneck [...] Samsung [...] that device.

This paragraph has nothing to do with this sub-thread (let alone my comment).

> Google could certainly introduce rules surrounding upgrades and integrator customizations which would alleviate the upgrade issue

They could introduce whatever rule they want, the question is: would anybody care? Google has no power over OEMs, short of making android "not open-source anymore".

> In other cases that upgrade will require significant engineering investments—time and money—on the part of the handset maker and the carrier. They might decide to spend the money and deliver the update, six months later. Or they might decide that the investment isn't worth it.

It's a double whammy. The OEMs need to spend the money for the update and the customer will be disincentivized to buy the newest hardware.

Not supplying ICS for the Galaxy S will help the sales of S II and the Galaxy Nexus.

It seems like the perfect opportunity for a hardware vendor to separate themselves from the crowd.

"Buy our hardware and be assured software updates for 2 years."

So, buy from Apple?

From my own experience with this, I bought a Samsung Moment a couple weeks after it launched and was abandoned with about 17 months left on my contract (with some severe bugs that were never resolved while I had it). I did get an official update to 2.1, but it was very late and that was the last update it ever received while I owned it.

Sure, I wasn't an eligible purchaser for their next immediate phone release, but their utterly terrible support of my product ensured that I'll never be a future customer of Samsung, for any of their product divisions and severely tarnished my impression of Android in general. All Android manufacturers do equally bad jobs at supporting their products with only a couple of products as exceptions (even "big release" phones like the original Motorola Droid got abandoned before their earliest contracts ended, late buyers are really screwed), so I'm not too keen on rolling the dice on any future Android products either.

Dug up this link: http://theunderstatement.com/post/11982112928/android-orphan...

It doesn't contain any new-ish phones, but for phones it does have on the list that were released less than 24 months ago (which would still be under contract right now), none of them will be getting updated to ICS via their manufacturer. The majority stopped receiving updates less than 12 months from their initial release.

I was using my OG Droid on a regular basis until I got a Galaxy Nexus. I was running the latest Gingerbread and a super-tuned fast kernel from http://www.peteralfonso.com/ on it. When the manufacturers drop the ball, the community jumps on it. Far better than an iPhone of similar vintage (the OG Droid came out in late 2009.)
I'm not seeing how your solution is "far better" considering that the "iPhone of similar vintage" is the iPhone 3GS (released June 2009) which still continues to receive updates.
If updates were all people cared about, they would've all switched to iPhone from a while ago. Not having many updates now is a pain, but it doesn't necessarily mean people will want to switch to iPhone because of it.
I think bad support for the Galaxy S will, in the long run, decrease sales of future devices from Samsung.

If customers are interested in long supported devices, then the companies who provide them will come out on top. And if customers don't care about updates, then they won't buy a new device just because it has a newer version.

There are already some device vendors who provide good support: Google and Apple. Others, like Sony and Asus, seem to be willing to improve their reputation.

Samsung itself has already improved a lot since 2010. It's disappointing that the Galaxy S is abandoned now, but it already got a great deal more support than Samsung's 2009 lineup.

Also, don't forget that Motorola is going to be part of Google soon. For obvious reasons, future devices from Motorola will run AOSP-Android and get Android updates for as long as possible.

tl;dr if customers want long term software support for their devices, someone will give it to them. No matter what software platform the software is based on.

Also, don't forget that Motorola is going to be part of Google soon. For obvious reasons, future devices from Motorola will run AOSP-Android and get Android updates for as long as possible.

Google keeps saying it's going to be "Moto as usual"; let's hope that was wrong.

Google does not need to give Motorola any unfair advantage over competitors.

Fewer devices, stock Android, longer support. Nothing that Samsung or HTC couldn't do as well if they wanted to.

Can't the same be said for Samsung and the Focus (since they are selling the Focus S)? Why did they provide that upgrade promptly?
Because Microsoft forced them to. And being the sole laggard when every other OEM updates all the generation one WP7 devices to Mango isn't going to reflect well on them at all. Not to mention that they don't need to update things like Touchwiz since Microsoft doesn't not allow deep customization to the OS by the OEMs.
Right, but this article claims that the problem is that "Android is too free" and that these companies don't have incentives to update. But the former is not true; Google has a stick just like Microsoft has a stick. It's a different stick, but it's a stick. They just choose not to use it. To me the blame is placed solely on Google who apparently is winning too strongly to care about this particular wrinkle.
> But the former is not true; Google has a stick just like Microsoft has a stick. It's a different stick, but it's a stick. They just choose not to use it.

What stick does Google have?

Realistically, someone with 12-18 months left on their contract is not going to buy a new phone anyway.
In Canada, the standard contract length is 3 years with a hardware upgrade after 2. I'm in the position now where I'm looking to replace the 3gs I got 2 years ago, and I'll definitely be getting a new phone in the next few weeks.

Also, keep in mind that people lose/break phones all the time, or get rid of their old one because it annoys them. Lack of updates could be a significant factor in making a decision to go with the same manufacturer.

> Not supplying ICS for the Galaxy S will help the sales of S II and the Galaxy Nexus.

Or will it help the sales of Xperias, Sensations, RAZRs, etc.?

I don't want updates "indefinitely". I think 2 years of updates, which is the usual lifetime of a phone, or updating to 2 major new versions (5.0 and 6.0 for 4.0/ICS phones) is reasonable.

I don't mind if they raise the price a little, but they'll have to heavily promote this "feature", otherwise customers won't know why their phone is more expensive than the competition who isn't offering these updates.

It would be a lot easier for handset vendors to upgrade all of their devices from the last 2 years if they didn't release a new phone with slightly different hardware every month. LG alone is upgrading 11 devices to ICS - that's over twice as many devices as _all_ of the iPhones ever released, and Apple has been selling iPhones since 2007.

Baring actual hardware limitations (e.g. the lack of NAND space on the Nexus One), most of the work in porting a ROM is the device drivers. Vendors are really shooting themselves in the foot by releasing a dozen different hardware configurations in a single year.

I don't know if you realize this, but the Galaxy S meets your criteria. The Galaxy S was released with Eclair (2.1) and got two major upgrades: Froyo (2.2) and Gingerbread (2.3). I'm not sure what this means for your definition of reasonable support, but I thought it was worth noting.
"MS-DOS—the original "weak OS." Every version of the software is retailored and rebranded by its manufacturer. Even some software has to be rewritten to conform to different machines and their varied specs."

Interesting definition of 'original'... unless my history is very wrong, *NIX was around first. Retailored and rebranded by vendors? Check. Rewritten for different hardware? Check.

Android is like Unix, which is no surprise really, since technologically that's what it is.

What freed Unix from the fragmentary mess of vendors? It was cheap commodity hardware, combined with GNU. As long as smartphone makers try to differentiate their products, incompatible versions of the OS will proliferate - and as long as Android remains schizophrenic about whether it's really open or not, and as long as Google tries to prevent forking, forks will happen. The best defence against forking is not to try to defend against forking. (Further reading: esr on bazaars)

Unix was only rebranded in the early 80s at the exact time DOS was released. However, Unix's unintended "re-branding" was at its birth: due to its portability & availability in source, every installation was almost a "port".
A lot of people expecting about 3-year life cycle of a smartphone now.

They'd buy one under contract and upgrade to a new on within 18-24 months. The old smartphone then given to a family member. It is a lot more common than the tech crowd.

So having manufacturers updating the phone for at least 3 years would really help a lot.

Seems I got lucky in that I'm using one of the older phones that has always had some community development inertia behind it.

In fact, I installed Android 4.0 last night and now I'm running a phone thats almost exactly 2 years old. I love my HTC Incredible.

by far my biggest complaint about my droid x2 is that I have no idea if or when it will get ICS. When google announces updates to android, rather than getting excited, I get pissed off. My phone is less than 6 months old, and was a top of the line phone. I have no idea if I'll ever get ICS. Isn't that absurd?
The lack of upgrades is not necessarily a problem for most people. This is why there has been little commercial interest in providing a constant stream of upgrades.

Take Windows XP for example. People are still installing this even though they are no longer supported by MS.