91 comments

[ 2.7 ms ] story [ 151 ms ] thread
Maybe they haven't been to any Android forums recently? Users are massively excited about new Android releases, often going to great lengths to attempt to obtain it before their carrier releases the update, and even attempting to port it to older phones.

The problem is the carriers and manufacturers, not the users' wants. They aren't updating enough. And I can totally understand the pain for them, having to QA all those new versions and release them.

android forums represent such a tiny fraction of a percentage of overall android users though.

I wish it was disintermediated from the carriers. I bought a generic android phone from BLU last year for $99 and wanted to update on my own to latest version of android, and it was such a pain to figure out how (I gave up).

Enthusiasts is a subset of users - a small one at that.

Still I agree the problem is devices are not getting update and it's not a problem of want as the article hints, but of can't, at least at the user level: Of course carriers and manufacturers hate having to support devices instead of selling new ones!

It's not like manufacturers don't want the strong brand recognition of being well supported and giving their owners the latest stuff. That helps them sell future phones as well, by gaining market share.

The problem that Google apologists/Android fanboys forget... is that deploying an Android update is a HUGE cost to manufacturers for customization, testing, and deployment.

Google ships endless new versions without any respect to this, and leaves most of the work, and the cost, on manufacturers, who already had thin margins to begin with. Especially on entry level phones, hardware costs have been a race to the bottom.

These people are afraid to point out that Google has created an OS that's hard to update universally, requires a custom deployment for each and every hardware model, and is shipped without working hardware support for most of the hardware using it or even a modicum of stability even on their own reference platforms.

while there are many phones around, there aren't hundred thousands different soc to support.

if the linux kernel driver model wouldn't be so hostile to driver backward compatibility, it'd be trivial for soc provider to have a single device driver delivered with the soc and cut the certification costs by orders of magnitude.

this is something google could fix, btw, creating something like FUSE but for wireless chipset integration and keeping that backward compatible.

Users do not benefit from binary blob drivers. They are insecure, make it hard to fix problems, and add artificial constraints to hardware.

Manufacturers can get their drivers merged into the mainline kernel and they won't have a driver backward compatibility issue to worry about.

They choose not to for business reasons (market segmentation/artificial hardware limits via drivers) or because they are being cheap. And because much of the market doesn't know enough to care, it mostly works for them.

In the long run I think it limits the IoT ecosystem from progressing and it's a practice which must stop. If your hardware is not fully supported by the mainline kernel, it may as well not exist.

Yeah the usual trite copyasta, meanwhile in windows and osx land proprietary drivers works for decades unchanged making the whole argument a leftist pipe dream.

The argument isn't bad per se, it's just that reality disagrees.

I am going to go out on a limb here and hazard a guess that the number of people willing to hang out on Android forums and hassle with rooting the phone to install a new version of the OS is vanishingly small compared to the number of people who couldn't tell you who made their phone, much less what version of the OS it runs.

That said the fact that a new Android release has to pass through two other sets of hands before it can get to an end user sure ain't helping.

I used to be one of those people but I've really stopped caring. There just isn't enough of a difference between all these releases to matter anymore. Is it going to make your device faster or easier to use? Probably not. Android apps have to run on almost every very version anyway so even that isn't an issue.
Yeah, but because of that, it increases time to market for Android apps.
As an end-user that doesn't affect me (it does, but it's pretty indirect). The Android ecosystem doesn't seem very healthy to me; it works merely out of sheer effort by everyone involved.
Yeah, I used to be much more excited because Android was playing catch-up on quality for a while. Remember the jump from 2.3 to 4? Just a much smoother experience overall. What a fun time.

Now it's mostly backend stuff as Play Services regroups much more of the user visible stuff. Boring is good too though, just not as exciting

I'm on Republic Wireless, so there's only three phone models. They did a 4.4 to 5.1 upgrade fairly recently on every model. There were a lot of people begging for the upgrade, but there was also a very vocal group of people complaining about the upgrade, either the process of doing the upgrade, or the fact that so much in the UI changed that they were comfortable with. A lot of people were asking to be able to downgrade because they didn't want to re-learn how to use their phones.

Statistically, I don't know what percentage of people want upgrades vs don't, but anecdotally, I feel that most non-technical users don't want upgrades because they've learned how to use the phone and they're comfortable with it.

Love Republic Wireless! The moto phones are great too, and cheap.
I used to get super excited. I've calmed down a lot based on how many bugs there are that I experience on my Nexus 6p. I love this phone, I love Android, but I finally get understand part of the reason carriers drag their feet and reimplement stuff: they expect higher quality than Google delivers. Careful word choice there: expect, not actually deliver. I enjoy the new shiny, but there are some glari g bugs.
(comment deleted)
Google's OS having bugs is not really why carriers drag their feet to upgrade, that's just a coincidence.

It takes money and time to upgrade all their carrier-specific "value-added"(i.e. shit) software on top of the new operating system, and they hesitate to do it, because they've already got it working, and taking no action is much easier and cheaper than upgrading.

Besides there isn't enough customers yelling about it anyway (the ones who really care only buy the phones with known fast OS upgrade cycles, like Nexus).

> Users are massively excited about new Android releases

and these people are usually out of touch enthusiast-types who are happy with half-baked releases that require a lot of tweaking, rooting, and replacement launchers and such to be usable. The 5.0 release a year ago was just a nightmare. It was slow and introduced a significant memory leak that I find impossible to believe that Google didn't know about at launch. But Google likes to cheer on its product and have Nexus yearly launches. Tying your physical product to your software one seems a questionable strategy at best, and a boneheaded decision at worst. I'd be happy with a new version every two years with significant refinement done in the meantime.

I have a Nexus and I fear every major update. It just breaks my phone and causes me stress until a .1 or .2 update finally fixes the issues Google introduced. If we're in a position where even Nexus owners are scared of updates, then there's something fundamentally wrong here. Worse, this morally empowers OEMs to say, "Well, google releases unfinished code, so we'll going to skip this update for a while." Honestly, the phone OEMs that went from 4.x to 5.1, skipping 5.0, were on the right side of history here. Every other Google update is half-baked and everyone knows it.

I don't think Google is giving itself enough time to iron out the issues. Slowing down this train is the only solution here that makes sense, imo. Meanwhile my ipad is bulletproof. Sure it gets minor issues now and again, but Apple's QA level is leaps above Android.

Lastly, the mobile revolution, at least in terms of phones, has long matured. Every update is just another denial about how close we are to the innovation grave here. There's just nothing compelling that requires frequent updates. Its time to move into a refinement period, the same way MS took NT4/2000 and made XP/2003 or Apple took a 3-4 year innovation break between Tiger/Leopard and Lion/Mountain Lion.

To down voters, why down voted this comment? I find it honest and not offensive.
This is exactly the reason why I don't want a Nexus anymore, getting updates slowly is a feature, instead of playing a beta tester for Googles "ship it" culture.

I switched to iOS on iPhone 5S last year after Lollipop being a shitshow, but iOS 9 has shown me that Apple isn't anything better, because they have to sell new hardware, so gimping older devices on purpose is the name of the game. I don't care about version numbers, if the OS is a stutter show after an update.

All those iOS update bragging would be interesting if Apple would allow downgrades to previous major versions of iOS until next one gets released.

Now a rule of the thumb is find the device/software you like right now and decide about updating it only after research of feedback.

Which features did Apple remove or break on your phone with iOS 9? Or are you speaking of new features that you read about and were not added to it? There's a big difference wrt "fear of updating" which is the topic on hand.
It brought stuttering performance when scrolling lists throughout the system on the 5S (mine) and 6 (from a friend). Even the 6S was stuttering on certain portions, but they somehow "mended" that (I say mended because they didn't bother much with 6 and 5S). They switched from OpenGL to Metal in iOS 9 for the first time, so it had to do something with it. There isn't anything UI wise in iOS 9 that would explain the difference in drawing performance.

After the signing window was closed, I was stuck with it. I tried ongoing betas until 9.2, but then just had enough and sold it. I refuse to buy into the Apple greed of selling new hardware with shoddy software updates and so far I've read at the time, this wasn't the first time (iOS 7). The majority of non-power users just think "hey phone is too old I have to upgrade" and buy a new device.

I mentioned fear of updating because this was the second time in one year I was burned with an update on two different platforms.

The grass isn't greener on the other side.

Google has changed their way of doing things a lot over the years many parts have been moved over to Google play so that they can be updated separately. They have also released Android N to oems so that the oems can start working on porting it a lot earlier. The problem is that oem sell hardware so have little incentives to keep updating the older devices. Although another change is starting in Oem where the number of different hardware versions produced are being brought down. Although Samsung is the biggest oem for Android and they have the worst system. Samsung to me has the power to release the same phone for all carriers and regions and also stop carriers putting bloat on the device like Apple does.
In reality I feel as though users are more concerned about a stable, well-refined, secure product versus having the latest trends.

This is becoming more and more important to me as I have ranged from the updating on nightly builds to only updating when I see real performance benefit - and even then I wait till I see more users from my model and service provider commenting on how much the change benefits them.

*edit - of course application updating is an entirely different process and I allow this to update ASAP due to unlimited data plans but updating core os features has become more and more towards the above versus the application update idea.

Android forums aren't the majority of users, though. And if the majority of users did care enough about updates, they'd be pushing for them.
Wrong: everyone wants new releases if the OEMs got it to us in a timely fashion, but consumers want less to buy new phones every year.
People would probably be more excited about updates if they actually received more than one or two minor updates from their OEMs and carriers over the lifetime of their device.

I'm very happy now that I've switched to a Nexus device.

I was happy with my Galaxy Nexus, too, until Google decided to stop supporting it. Nexus phones aren't immune to that kind of death.
That phone was a dog 18 months into its life. Google seemed to have struggled getting updates to run at any speed on that phone. It was also rumoured that Texas Instruments ended support of that SOC hence Google killing it off
"whatever is announced will essentially be an irrelevance since a year from now it won't even have hit double-digit usage share."

I don't get the logic there. Why is it "essentially an irrelevance" just because it takes time to reach a wide user base? Today's releases will have tomorrow's wide user base and be as relevant as last year's releases are today.

TL;DR Author finds most sensational way to describe how most android users do not like to buy new hardware to receive latest android version
I wish I could still run the original version of Android I got when I bought my tablet. The version I have now (and got forced upon my tablet) is much slower and less stable.
Try resetting your tablet and loading only the apps you use. Slowing down as a device ages is often to do with apps doing useless things, like loading ads and spying on you, in the background. This gets worse as app publishers update their apps to do ever more intrusive things in pursuit of revenue.

If that doesn't improve your life, check if there is an aftermarket distribution, like Cyanogen, that runs on your tablet.

EDIT: You may also be able to disable built-in apps you do not use, even if you can't uninstall them.

Android has a different update model. It's inferior to Apple's, obviously. But that's how life is when you have OEMs that insist on adding a lot of their own "value" and who sell through the carrier channel.

In a strange way, this article confuses latency with throughput. It takes a long time for each Android update to gain a majority of the installed base. But it does get there. Slowing the frequency of updates will not change that.

Android continues to develop at a fast pace. Android N previews large-tablet/desktop OS features like proper mouse support and resizeable windows. This would not be the time to slow the release schedule.

One reason I hope the tablet market grows to where it can influence the overall Android market is that tablets do not need carrier approval for updates.

> One reason I hope the tablet market grows to where it can influence the overall Android market is that tablets do not need carrier approval for updates.

Phones don't need it either.

That's true. While I understand the carrier channel and why it works the way it does, I'm baffled as to why customers put up with it. You get a phone laden with both the OEM and carrier's spyware, that will lag system updates somewhere in the range of 9 months to never... Why buy that crap?

If Google deserves criticism it's for not pushing harder and more consistently on initiatives like Google Play Edition and Android One.

People put up with it because they don't really know of any alternative outside iOS. And until recently, financed phones were pretty much only available through your carrier, firmly locking you into the carrier channel and everything that entails. People might not like the nonsense--to the extent that they even think about it (honestly, Android updates take so long I know people who don't even realize that major updates are even an option for them)--but they dislike it a whole lot less than the idea of spending two grand in cash and all at once to outfit a family of four with new phones.
This is what a credit card is for. If you're going to buy on credit, do it on independent credit.

There's too much conflict of interest to trust cell companies to finance your phone.

No, but the agreements in place more or less guarantee it. Back with the original iPhone, Apple was able to push Cingular into ceding a lot of control over devices. Google was never able to do the same. Partly because they needed to make up marketshare, but also because it went against a lot of the Android ethos (IMO) that pre-dated even the iPhone.

I love open-source, and I'm a huge believer in the possibilities it represents. But I think those beliefs blinded people in the beginning, who assumed that carriers and manufacturers would similarly care. They don't. Hell, they're even slow to respond with security updates. Google is moving in a better direction, but it'll take a while. If we're really lucky, carriers and manufacturers won't notice the gradual changes and raise a fuss.

You'd think that, as long as they get to customize things to their heart's content and install their bloatware at some point, they'd be able to realize the benefits of a better update model. But then again, major UI changes that are clearly visible help differentiate new devices. So there's a nasty vested interest at work there as well.

Apple still has a lot of extra measures in place to work with carriers, they just do it ahead of announcing updates instead of dropping the code like Google does and then waiting for everyone to fix it for their equipment.

From my recall, Apple actually has a "Verizon team" that works on ensuring iOS updates meet all of Verizon's certification requirements for release ahead of announcement, which is why Apple software updates never suffer that terrible additional wait Android updates have before they end up on Verizon phones.

They still need willingness from their manufacturer...
Tablets have the same update cycle as phones for Android devices -- my tablet got a one major version upgrade and that's all it's ever going to get. From Samsung. And it's a powerful tablet that will last for years.

Google can keep pushing out updates but the percentage of devices on any particular version will keep getting smaller. The whole thing is fundamentally flawed.

Google agreed to this carrier model to gain market share against iOS. Google first tried the Apple full control model but couldn't get share that way. Stop blaming just the carriers.
> Stop blaming just the carriers.

Why? They're the ones that wouldn't agree to the terms that would have prevented an unnecessary bottleneck.

The same argument could be applied to IE6 when it came out. Noone wants newer browsers more than every 3 years!

What rubbish.

I feel the author makes a lot of very incorrect assumptions about what the consumer thinks about their phone operation system version. As stated here already it is really the fault of OEM/Carrier as to why a new OS has a poor adoption rate and as such adoption rate is no real indicator of customer satisfaction or mentality. I really wonder how the author came to these misguided conclusions.
"Unless Google is going to unveil some new mechanism for updating Android - which would essentially mean taking it out of the hands of the hardware OEMs and carriers"

Arguably this already happened, depending on who you ask. Google moved all? of the high level APIs into the Google Play Services Library, which google can update whenever they want, they can even enable / disable APIs as they see fit (for example, google wallet if it detects you're on a canadian carrier)

Now the only reason to buy a new phone is if you want a new phone, otherwise all your apps will work regardless of what phone / what version of the OS you have.

Absolutely. My e-mail app, my web browser, my music player, my text messaging app and even my keyboard all update through the App Store. Actual major OS updates are a lot less vital than they once were.
Updating through the App Store isn't the same thing as mainly depending on Google Play services. Those apps still might entirely depend on core OS APIs.
I don't believe I am reading this kind of nonsense in HN. Or you don't know what OS is or I do live in entirely other world than you. Google or any vendor which does produce any OS'es , does spend whole year for optimizing or fixing bug in low level API. How do you feel about stagefright in you KitKat ? Or since this is your ridiculous logic, how about people still running 4.0 (let's imagine all of their "app" updates goes through google play) , what about their low level libraries , which most of the time is unfixable without major update ?

Think about stagefright , your personal data is at risk just because some stupid company doesn't give fuck about you (and me), and wants you buy more phone.

Android update issue is clash between whole hardware and software industry. remember when you buy software you was going to get update for 5year or more most of the time. at the other hand in hardware industry when you did bought (before android) any phone, there was no update. no body cared about updates, and lets be honest the technical capability was not there in that time, so no one excepted companies to update their phone.

But regularly updating their phone require a lot of investment from companies (and at the other hand will a little decrease selling phone). which companies resist, which absoulouttly they don't have right to do. This is fight right now between customers and hardware companies.

Specially from now on this is going to be interesting , because phones from 2015+ , is capable of doing your ordinary computation (reading mails, watching movies, etc) for maybe 7, 8 years. (just like old pc , which does run latest version of Windows 10/Ubuntu good enough right now for you browsing/chatting/watching/etc, but you cant play high end games on it).

How about being a little less hysterical?

> Or you don't know what OS is or I do live in entirely other world than you.

My comparison was (pretty obviously) between iOS, which bundles all of the apps I mentioned with the OS, and Android, which does not. I can only ask for your forgiveness for my "ridiculous logic".

How about being a little less hysterical?

Perhaps the comment could have been worded a little more diplomatically ('cuz we're all sensitive, special flowers here), but I'd say the criticism is spot-on. If one thinks that "oooh, my apps get updated, who cares about OS updates?" (yeah, I know what you actually typed), a little correction is deservedly coming your way. The explanation for your "comparison" still doesn't tell me that you have a good grasp on the point 0xFFC was trying to make.

>cuz we're all sensitive, special flowers here

I think it's more that it's easier to discuss without people being massive jerks.

It's possible to express opinions without going all over the place

There were at least some previously abandoned phones that got fixes for Stagefright. I know the S3 had some releases, although it may differ by carrier.
> Google moved all? of the high level APIs into the Google Play Services Library

This is not true. And developers need all APIs, not just the ones Google wants to license to OEMs to maintain control of the platform.

For example. Android N will use OpenJDK, and this will be a big shift for us.

Not really good enough. There are massive changes between OS versions. Until a couple days ago, my LG G3 was still on KitKat. The underlying structure, performance, and a lot of other significant details are directly tied to the OS and can only come with an OS update.

And we can't get those because carrier stranglehold, proprietary drivers that need to be compiled for every kernel variant instead of using generic hooks, and so on. Android is still Wild West of smartphones, and it's embarrassing that Google's updates are hilariously terrible compared to Apple.

Most people don't know or care which version of android they have, and it's clear that it's not impacting android's domination of apple in terms of market share.
I don't disagree with you, but I think we've come to expect too much from software updates at the same time. For example, security updates and performance improvements are often touted as the reason we should get software updates more often. However no one expects say apple to replace the processor in your laptop when a new one comes out.

Software costs money to develop, most users don't care enough to pay for software updates (would your "mom" pay $20 to have JDK 8 support?) and unless the update enables a feature the vendor expects you to pay for (say, iCloud or Google Drive) no one is incentivized to provide timely updates.

On the flip side, software updates allow vendors to differentiate their new phones (yeah they both have A123 processors, but this phone has snapMessage *due to the new update)

I think the only other alternative is fully open source phones, which exist, but in terms of updates they're not any better

Google has indeed moved a LOT of things to Play Services.

I should also mention the support library. I can now use some new niceties like vector assets on all Android versions.

However, not everything is part of play services. You can patch some security holes through play services, but some core elements of the platform need a full system update (however Play Services can detect apps trying to exploit a security flaw).

Also, in order to add something like the new permission model or a better version of the runtime, an OS update is still necessary.

This isn't true for stuff like the video playback libraries hit by "stagefright". For some reason Google couldn't simply ship a fixed library. I read that it was because the update process doesn't have sufficient rights.
TechCrunch claims there are 1.4 billion Android users. 7.5% of that is 100 million people. How many apps and services would kill to be able to reach 100 million people?

And just because a lot of people wait to update until they get a new phone doesn't mean they don't care about that update. Or that handset manufacturers don't care about the update. Or that Google should stop making new versions of Android. Or whatever the author's point is...

Replying to myself, I know. But a related point:

So let's have fun with numbers...

1.4b Android users. 7.5% updated to the latest. That's ~105m.

500m iPhone users. 84% updated to the latest. That's ~425m.

(I'm pulling these numbers from different sources, but they're probably of the right scale.)

My only point is that there might be an argument that Android's deploying new versions on about 1/4 of the devices that Apple is, not 1/10. Which is an important distinction if your argument is that Google is failing at getting people to update their devices.

Yes but if you're going to be developing an app or service are you going to choose the latest version of Android and get 7.5% of the market or are you going to go down to lollipop and get 40% or down to kitkat and get 70%?

It's webdev for IE all over again supporting balls old versions.

Except it's not really.

Releases are always additive, and (to my knowledge) have never removed anything (even when they really really should have).

The only reason to target a newer version is if you need things that were actually added to the OS (like fingerprint scanning). And even there it's pretty easy to gate functionality. The vast majority of apps don't need to care in the slightest and with appcompat almost everything useful is available.

It's not like you have to make completely separate apps for Lollipop and Marshmallow the way you used to for IE and everything else.

Not quite true. Handling WiFi changed in 5, and changed again in 6 (really only relevant if your app deals with changing the Wifi state, admittedly). 6 introduced Doze, which can require different implementations of things. There were a number of graphical things in 5 which, if you wanted them on earlier versions (and your Design department does, and you're going to do it, dammit), require fairly different implementations.
Which things are these? And since generally there's a lot of effort to not break old apps, why wouldn't you just do it the pre-5 way?

Also, just to check, we're talking about versions and not API level, right?

1.4 billion Android users? Or 1.4 billion Android devices sold?
I'm not interested in updates because they never seem to do anything useful, they just move everything around and make thing harder to use without adding anything useful.
What about yearly Javascript?
Desperate hit piece, designed to ignore Apple owns the hardware and the OS, and Google only owns the OS (excluding Nexus devices). Had they compared Nexus/Android and Iphone/IOS adoption rates, I think their would have been a much more clear picture of the situation.

Articles like this always seem to be some awkward attempt at turning a strength (Androids wide adoption, budget friendly alternative phones, etc) into a weakness, via the magic of nuance-free comparison.

And people ignore that Google could easily put some clauses on their contracts to force OEMs to upgrade, just like they have clauses obliging them to use Google Play Services if they want to use the store.

It is all a mater of what Google is willing to put on their Android contracts. No excuse.

The issue doesn't seem to be that people don't want the new Android release, it's that carriers don't want to give it to them. Here (Canada), if a new device and Android version comes out you can forget about getting updates on old devices. This especially bad when it comes to minor releases that include security updates.
I assume the thought is that withholding updates would make the consumer upgrade their device. The irony is that most users don't care or know what version of an OS they're running and they only upgrade when the device no longer meets their needs.

I suspect that if the carriers instead forced upgrades they'd see a much higher rate of upgrades as newer OSes would bog down the older devices and make them less usable. Users would become frustrated and upgrade to newer devices out of necessity.

Not to mention every upgrade to my Nexus 4 has made the Bluetooth behave badly in new and more frustrating ways.

> and they only upgrade when the device no longer meets their needs.

I think you hit the nail on the head here. My HTC M7 GPE is only just beginning to show its age in terms of performance. My SO's Samsung S4, however, has been literally unusable for months now: battery performance issues, only able to run ~3 apps at once (low RAM), unable to update any apps because there's no free space despite having around 50 less apps than me and also despite having an SD card, overall performance is laggy & slow, certain apps won't even run now, the list goes on.

These phones came out within months of each other in 2013, and in spite several hardware advantages the Samsung is no longer meeting its users needs compared to my M7. Of course, my SO has no idea why this is, like you said she barely knew what kind of phone she has (lol), but the end result is that she's having to upgrade the phone (early, I might add), and the differences can largely be boiled down to software and updates.

I think the issue is that Android is becoming like windows is/was. By this I mean that there is lots of built in bloat. For instance Rogers (my carrier) automatically installs an NHL app, a ringtone app and other seemingly useless addons. Further, Android API's tend to change quickly and the standards aren't as strong as they are around the iOS ecosystem[0].

If google stops allowing manufacturers and carriers to customize the device and handles upgrades we'll see the same stats as iOS has with regards to market reach of the latest os version. Further, if they clean up the API's and develop better standards its less likely that apps will crash phones or cause significant lag or issues when running on old devices with a new os

0. I say this as an android dev who only wrote a little iOS with swift.

(comment deleted)
I've only done a couple of hello world+ type apps on android natively and a more involved POC app with Ionic before handing it over to the actual mobile devs, so pardon my ignorance here.

From what I'm seeing, from the developer perspective these releases don't introduce too much fragmentation. Tooling-wise things are reasonably seamless too (with android studio). Am I missing something?

Yes, the OS API available in each version.

And although HN usually likes to bash Microsoft about bringing out new libraries and frameworks, Google is also very good at making "last year's best practices into deprecated APIs this year".

Which means multiple code paths if you want to provide good support across all versions, even with the help of SupportLibrary.

The author doesn't understand the concept of the support library.
I'm using a Wileyfox Swift (Aug 2015) with CyanogenOS. It is my personal expectation it will be supported for as long as Samsung S2 (i9100) :)
How about the Nexus users who get the yearly updates immediately? I'm pretty sure they care, I know I do.
"After a year, Android Marshmallow has barely managed to hit 7.5 percent"

Wow, years are a lot shorter than I remember. Android Marshmallow was announced May 28, 2015 and was released with the Nexus 5X and 6P on September 29, 2015. So 11 months since announcement, and 7 months since release.

The author has a point about too few users being on the latest release, but let's get the facts straight.

I won't buy an android phone if it's not a Nexus. This isn't because I love Nexus phones, they're just serviceable. I really want an external SD card, but have to make due. I mainly want timely updates for security's sake. AOSP and a rooted OMNIRom/CyanogenMod/Replicant Nexus is the closest you can get to a mainstream, supported FOSS phone these days with the fastest security updates.

One of the real problems is carriers. They have no material incentive to push software updates and are often in hot water about security updates. They actually have a disincentive to push updates. If Samsung doesn't update the Note X to Android Y, you buy a new Note X2 phone from them with fresh Android Y. It's a broken system with misaligned interests all over. So, to contradict the OP, customers, carriers and manufacturers want yearly android releases.

Another problem is the difficulty in updating between releases. I can install Windows or Linux on any junker motherboard and get it to run, but I have to pray to the manufacturer/carrier tag-team to allow my $800 phone to get the next version a year later. Why can't we remove them from the equation, easily? I'm sure this point is full of naivety on my part. It just smells like planned obsolescence.

Another problem is the shift from AOSP to Google Play Services. The deprecated Android browser even had unpatched security holes as 'wontfix, switch to Chrome' last I checked. So many apps rely on GAPPS for anything and everything now, what's the point of an open OS when everything is behind a blackbox service?

Another problem is the centrality of the Play store. F-Droid is a life-saver, but how can I get my Brother Printer Service driver? I can't download it from Brother. I have to get it from Google Play. I've been spinning up a Genymotion emulator with GAPPS just to download, repackage the apks I need and then move it to my Nexus. Then I get hit with 'this app is not available for your device/version/location' and it's spoofing the build.prop file to let me download the damn apk. The whole ecosystem is DRM'd lockin at every turn.

F-droid allows private repos with closed source APKs, I wish a decentralized system like that, like the web, would gain adoption.

Why do you need the carrier to be involved in your decision to update your phone? All they know about is your SIM card. Do they even know or care what phone or version of Android you are running?
Most of the readership on HR doesn't. But most consumers want their phones to "just work" - unless they personally feel the pain of unpatched vulnerabilities, they expect that whatever is running on their phone continues to work. So it seems that the carriers have decided not to risk keeping their customers up to date (not wanting to take on any extra tech support). Carriers don't generally care what you're running on your phone, but since many handsets have locked bootloaders (and/or few people maintaining alternative ROMs), choosing a Nexus device means being able to do what you want, which could include being more secure.
> So it seems that the carriers have decided not to risk keeping their customers up to date

But I don't understand how the carrier is involved at all. What if you update your phone on WiFi so you aren't using the carrier at all. They can't intercept that so how are they to blame for whether you can upgrade or not?

If you purchased your phone through a carrier it comes configured to only allow upgrades approved by that carrier. At least in the US most people still purchase their phones through their carrier.
I guess that depends on how you got your phone. Manufacturers make carrier-specific hardware a lot of the time since carriers buy in bulk. This is slowly going away in the US with most companies switching to pre-paid and BYOD plans, but still an issue. Sometimes it's simply a digit on the end of a model number, other times complete radio frequencies different. I remember when I got my Note2 years ago, I got the T-mobile one because it had the best hardware and most frequencies supported. I waited the required number of months before I could unlock it and hop to ATT for their network. Sometimes only certain model numbers will accept a flash because of whatever the carrier had the manufacturer do to their model.

I know there's recent legislation on it, but for a long time there were carrier locks on phones sold with plans and they were the only one you could have on it. Before LTE, CDMA phones couldn't switch carriers but with the grace of heir current carrier as it was on the carriers end. There was no removable SIM. I'm not sure if modern CDMA phones still require explicit requests to the carrier regardless of the LTE SIM as I'm on GSM which has always had them.

Modern android even has a SQL database file in their phones for things like carrier-locked-down tethering and limits. So if you have a version of android that doesn't have these bit-flags getting sent with packets or has new ones, I'm not sure your carrier would allow it on the network. Of course you can root it and make all data, even tethered, appear like it's coming from the android browser. Carriers seem to have a lot of hooks in the OS is all I'm saying, blindly flashing is unfortunately asking for trouble.

So, after hearing about how "fragmentation will kill Android!" for... oh... ever since the first Android release, how's that prediction working out? Seems like fragmentation isn't actually as scary of a problem as it's made out to be. Perhaps we really could just trust developers--who have had to deal with this scary "fragmentation" for years on desktop and web--to test applications and design around it.
How are they differentiating between people who don't want it and people who bought a phone in the last couple of years and are waiting for an upgrade?
I own a Google Nexus 5X and I want yearly Android releases.

Seriously, this whole problem is caused by manufacturers and carriers installing their bloatware (which is what people really don't want). Without said bloatware (goodbye TouchWizz) there is no barrier to users updating when a new release is pushed by Google, because carriers won't need to lock versions to ensure new versions of Android don't break their bloatware.

So if you don't like it, stop being part of the problem. Stop buying anything non-Nexus (particularly Samsung), they are detrimental to the Android ecosystem.