Android Co-Founder: Fragmentation "an Overblown Issue"
curtwoodward writes "Sure, developers might pull their hair out trying to keep track of all the versions of the Android operating system scattered across hundreds of millions of mobile devices worldwide. But a co-founder of Android says the OS's fragmentation problem is being blown out of proportion. At an event this week in Boston, Rich Miner — now a partner at Google Ventures — said some level of fragmentation is inevitable with Android's reach and the number of partners in the ecosystem. But things are getting better, he said, and in any case most consumers don't notice the difference: `This is a bit of an overblown issue, frankly.'"
This just in: Guy with stake in product says nothing is wrong with product. Film at 11.
He's correct, the fragmentation issue is quite overblown, especially when compared to Android ‘Master Key’ Security Hole Puts 99% Of Devices At Risk Of Exploitation.
The problem is NOT overblown at all. There is a serious problem when there are apps that require a specific android version or device and the numbers are increasing.
Because they have no clue what they are buying. They just wanted a cheap phone than runs apps.
And I'm just an end user who owns both Android and iOS devices. When I see the disparity in app quality on both platforms, especially in games, and hear developers explain why Android is so much more difficult to work with I'm going to take it at face value.
How stupid. Telling frustrated developers that there are no issues does not make them less frustrated or solve the issues they are having. That simply makes you look like an idiot. This sounds similar to the Jobs "You're holding it wrong" excuse.
but I as a developer sure do notice. The biggest issue I keep running into (developing backend software for my companies frontend software) is that testing on a mix of devices means learning the quirks for every single manufacturers user interface that they have bolted on top of Android. We've also had some weird issues based upon the Android version installed, across two devices with the same Android version number (4.0 for example) with the carrier/device manufacturers changes we have a bug on one but not the other.
This is highly annoying.
One issue that Android users hail as the greatest thing since sliced bread (alternate keyboards) actually meant having to write work-arounds because some keyboard implementations were simply broken, or actually caused issues with entering text in certain situations. An alternate keyboard shouldn't be able to have that sort of an effect!
Fragmentation is real, and it is an issue. Consumers don't notice because they only use a single device, developers and power users that may switch more often than the average user will notice and it is an issue.
cat
Fragmentation also makes it more difficult, my guess is, for Google developers to upgrade core vanilla "Nexus" Android. They would have fewer options to change things as more and more phone vendor variants depend on particular feature sets in the core. Or conversely, variants will be inherently fragile and break / need re-engineering everytime Google ignores them and freely upgrades the core.
Where are we going and why are we in a handbasket?
Google marketing: you botched this one. First you claim the improvements are amazing, then you claim most users don't even notice? Either the amazing features arn't getting used, or they are not better. Either way, I don't see how thats a good thing.
Google isn't responsible for the security of android OS phones. This results in many companies sacrificing the security of their users by not investing in real security maintenance for the devices. Hell, the NSA may even subsidize them financially for the 'work' of *not* fixing security issues.
The only real options boil down to fragmentation or forced obsolescence. Android chose the former, Apple chose the latter. Both suck in their own ways.
The fragmentation isn’t the issue. It’s all the API bugs, currently 18205 open issues. Most will never get fixed and is therefore the developers problem to work around. The poor design of the Android API:s doesn’t help.
I was happy with Android, I was even happier with the custom ROMs which got rid of the annoying quirks... then I found I was banned from downloading any adblock software from the Play store. I will shift myself and anybody I know off the Play store to an Android store that is not fatally crippled. Suggestions anybody? Amazon and the Samsung app store have nothing. I am really hoping this fragmentation with lead to some uncensored store that allows me to run software I choose to run.
Phillip.
Property for sale in Nice, France
More accurate version: "Android co-founder says that users don't notice fragmentation, because OEM customizations make the phones shitty no matter what version they are."
The problem is that most phone vendors (basically all except Google) never update the Android system after the phone is released. This means that there are millions of phones stuck on some ancient versions of Android but many apps for Android are targeted at specific version which are constantly getting higher and higher because Google keeps pumping out new versions of Android.
http://www.gamasutra.com/view/news/195310/Video_iOS_Android_myths_dispelled.php Here is a post mortem from a game developer who released two mobile games on iOS and Android. He briefly explains that both of the games ran perfectly fine on all but 3 devices. They weren't targeting a specific version of Android. They're supported devices were over 1900 devices for each game. So the fragmentation isn't as big of an issue as Apple likes to talk it up to being. And after the T-Mobile announcement today the fragmentation should only get better from here.
As the owner of a non-upgradeable Android 2.3 phone (Motorola Defy XT) I find that most apps I care about work fine on the phone... with the exception of all the new Google apps and updates to said apps.
Google Maps
GMail
Google Now
Chrome
all of these apps are either not available, or are only provided in downlevel versions. You have to be running 4.x to get the latest and greatest apps.
Meanwhile, Google produces versions of their apps to run on iOS 6, which is available on every iPhone back to the 3GS from 2009.
From the start Android was designed to support a variety of hardware, including screen resolution, screen aspect ratio, keyboards etc. On the other hand every time a new iDevice came out, Apple just made hacks to get them to work (eg. image for retina screen loaded by hard coded @2x at the end of the file name). There are 5 screens to support for iDevices, and it's a major pain in the arse. On android, hundreds of different screen configurations done very easily.
I have a still perfectly functioning ipod touch first gen where I can't basically reinstall any of the apps I own because the current versions of them in the app store are not compatible with my IOS version. If I decided to wipe it and resell it it would basically be a paperweight for anybody who purchased it as they would not be able to install anything on it.
In the end companies should be free to EOL old versions of their OS, obviously, but there should be an official way to get versions of apps compatible with your old OS if the app existed already in the first place. If I have app foowiz 1.3 that runs just fine on OS 1.0 and recompile it to have a minor enhancement and the toolkit now makes it mandatory that I can support only OS 2.0 and up, there should be a way for OS 1.0 users to keep downloading 1.3 while everybody else moves to 1.4 and above.
It would definitely be a lot more environmental to allow customers to keep using their old devices, or sell them (rather than tossing them) not to mention that it would make them more likely to buy more of your devices since they would trust that said devices would remain supported in the future.
-- the cake is a lie
from what you are saying it seems android is more lenient about allowing you to target old devices.
They are, which is why software quality on Android lags iOS.
Apple at the moment does not let you submit to the app store anything targeting anything under iOS5 (a somewhat recent change after 6.0 had been out for a while).
This may mean some older devices drop out - but at this point the only devices out are some 1st gen iPod touches and the very first iPhone (not even the iPhone 3G which can run iOS5). That is not unreasonable and means that applications generally make use of new and advanced system features sooner rather than never.
In a world where Android developers pretty much have to target 2.0 devices as a base, you lose some ability to use advanced features to make a better app. That is dragging down quality all over and is only going to become more of an issue as iOS framework features advance...
"There is more worth loving than we have strength to love." - Brian Jay Stanley
He's right. I've got five different Android devices, no two of which run the same version of the OS. But it doesn't matter to me for two reasons:
When I browse the Play Store on each device, it filters the list for me and only shows me the apps I can run on that device. Problem Solved.
Alternately, when using the Play Store web interface, it will tell me which of my devices can run a given app and let me fling the app to the device. Problem Solved.
Maybe this is an issue for developers or people who are anal and like having only one way to do something. Never understood the appeal of that thinking.
Sig for hire.
This just in: Guy with stake in product says nothing is wrong with product. Film at 11.
These are not the 'droids you're looking for.
> The problem is that most phone vendors (basically all except Google) never update the Android system after the phone is released.
Even Google doesn't keep Android up to date on older devices. The once-flagship Nexus One, introduced in 2010, only got official updates for about a year, taking it from version 2.1 to 2.3.6.
That is a strange way of measuring time. It was launched January 10 and only had its operating system replaced 13th Novemer 2012...so Almost 3 Years, more than say an iPad.
...crashes, reboots, horrible bugs that render your device unusable.
So, yeah, he's right, that one problem is not significant when compared to these.
He is disconnected from the real world as most rich people are. They dont experience the world as people who make say under 50,000.00 bucks a year. Something doesn't work get a new on done deal.
Jack of all trades,master of none
in any case most consumers don't notice the difference
That is bull, they do notice.
When it comes to "why can't I load this application" we notice.
We notice when a phone can't be upgraded.
Sure, Android fragmentation is a real issue. However, before Android, just about every phone manufacturer had its own operating system, and it was difficult to do development for.
It isn't like if Android didn't exist, everything would just run iOS. If Android didn't exist, we'd likely have a situation where every vendor has their own entirely different platform. That'd be real fragmentation in the phone industry.
Right now, Android is much like Windows. You don't know exactly what version a user will have, and what hardware and configuration they'll have, but at least there is a set of common APIs you can rely on. Thanks to majority market share, you can develop an Android app and get a massive chunk of the market, even if that app needs some code to deal with specific versions of Android.
So what should one target when Android 2.x completely lacks an API that does close to what is needed?
AMERICA is the home country of both Google and Dice Holdings. And the big three carriers IN AMERICA refuse to give a discount on service for not taking a subsidized phone.
And there's a developer problem when the upgrade from Android 4.1 to Android 4.2 broke every game that can use the Wii Remote as a controller through Bluetooth. It's just one that's impossible to work around from user space.
You should be able to at least upgrade the O.S. on your given device. To me this is a very big deal.
The problem with games is that they're more difficult to develop on a (DFSG) free software model than applications that are not games. Creating assets other than code costs money, and you have to recoup expenses somehow. The problem with paid apps on Android is that Android got launched in a lot of countries that didn't have Google Checkout yet, meaning the only way to get an app in front of users in those countries was to offer it without charge. This set an expectation among users even in other countries that apps would be $0.00.
It would have made more sense to say "dearth of devices available to in-house testers compared to those in the field".
Apple is also dropping support for the fourth-generation iPod touch, which was the current model nine months ago. Because gamepad support is new in iOS 7, and game developers who haven't been able to get into Nintendo's far more selective developer program will be itching to finally have access to physical controls, watch games get quickly updated to be incompatible with the iPT4.
Dear Rich Miner:
Yes I notice it as user consumer, I have a samsung phone (3.6) and a polaroid tablet (4.0), and guess the number of updates I had in 1 year? One for the phone. I prefer run games only and not trust my info (phone numbers are in text file away from apps) in an esoteric device that never updates because is "perfect".
...then express the problems with it. True Anti-Android people show more apathy than anything. I love iOS, THEREFORE I complain about resolution fragmentation (and the lack of 16:9!) I love Google, THEREFORE I complain that they robbed me of Reader, Talk, and Latitude. I love Android, THEREFORE I hate love-child, impure devices that aren't pure.
This just in: Guy with stake in product says nothing is wrong with product. Film at 11.
Thing is, he's not wrong. Most consumers won't notice.
Its more of a developer issue. The effect on consumers is secondary, ie an app they might want is not ported to Android or it is not available for the Android version they have.
You buy hardware and are supposed, often even enforced, to use the software (operating system) the vendor chooses for you. The PC, for example, was made to run different operating systems. All you had stored inside of it was the BIOS which loaded the bootloader from disk, and executed it. You could just pop in another diskette and run a different operating system. This still is the case and the reason why you can still run the latest and greatest operating system on a 5 year old PC, while a 5 year old smartphone is heavily outdated.
A remote root exploit is discovered in in Gingerbread and Sprint refuses to fix the issue because they don't have the resources to address the issue and then every smartphone on Sprint running that version turns into a spambot with a dead battery. ... Not that that would ever happen...
Select from tblFriends where interesting >= 4;
Fragmentation on Android is a huge problem. Each device manufacturer has their own slightly different version of the OS, each with its own set of issues and incompatibilities. Sure, they only crop up when you try to do specific things... like, say, open a Bluetooth socket.
(I am an Android developer responsible for testing my company's product on dozens of different tablets.)
So how many apps do you know of that require opening a bluetooth socket? I think I can count maybe 5-10 out of my 300?
BULL...HORN !
MY SMAL BUT VERY VERY SEXY COMPANY HAS BEEN STRUGGLING WITH ANDROID DECOMPOSITION MORE THAN FRAGMENTATION AND AS AS RESULT OF
HARDWARE MANUFACTURER CODE EXTENSION DYSSENTERY AND GOOGLE'S OWN INEPT MANAGEMENT OF A BASICALLY LINUX VARIANT WE HAVE TO MICRO MANAGE 15 ( FIFTEEN !!) DIFFERENT BRANCHES OF THE SAME BASIC APPS ( WHICH MIND YOU DO BASIC STUFF LIKE USE SAMBA FOR VIDEO STREAMING, ACCESS 3.5 G FOR LOCATION BASED TARGETED ADVERTISING INSERTION, USE CUSTOMIZED FFMPEG FOR D.R.M..... NOT FOR THE FAIN OF HAERTS )
sorry but I needed to get this out of my lungs and before we switch to focalizing on iOS apps , at leas with Apple you get sodomized intop slavery but with a very very nice and sexy customer base...
I've got an HTC Aria. Haven't been able to get HTC Sync to work on Win7. Can't upgrade the phone OS without HTC Sync, and it's a custom HTC version of Android instead of vanilla Google. And as far as I can tell, I need to update Android to get it to talk to the newer HTC Sync?
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
Most RAZR users in 2005 were perfectly content with their phones and didn't notice the difference between what they had in their hands and what was possible when Apple was hatching the iPhone.
Users should not be expected to "know the difference" as that is not their job. It's your job, as the technologist, to know the difference and improve the user's experience. The user's sole task is to reap the benefits and reward those who provide the most benefits.
Simply not true. Compatibility issues are almost always down to differing hardware/drivers. That's the same on any OS except for iOS where Apple tightly controls the hardware too.
I've done Android development for an industrial product using Bluetooth. Didn't see any issues, the API is stable and just works. If I ever do discover a device that has issues I'd first assume it was down to crap hardware, not the OS.
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
There are several apps for the iPhone original that won't install on iPhone 3GS, others won't install pre 4 or 5 because iOS latest is needed that isn't available for that machine.
iPhone is fragmented and it's a huge problem.
By your assertion of what makes it a problem, at least.
In your rush to defend crApple, you're forgetting the problem here.
The complaint is that older versions of Android may not support your application written for a latest version of the Android system and that this is both fragmentation and a big problem.
Yet here you are, defending the same problem in iPods with "you got 5-6 year old stuff and newer stuff doesn't work? WHO CARES!", which is entirely what this co-founder is saying.
PS Cyanogen Mod.
PPS See the iPod not able to get an iOS update.
PPPS Get a clue.
" but that happens A YEAR AFTER you buy an Android phone."
WRONG!
That's not true.
Now, yes, SOME carriers ***IN THE USA*** have managed to get the power to lock you out of your phone so that you cannot update it. Google can't stop them. You can, however, NOY BUY THEIR SHIT, ***and you can STILL buy yourself an Android phone***.
If you want to buy an iOS phone, however, and crApple don't want to let you own the device you want, then you're SOL. Nobody else is allowed to do it.
...to debug all those little quirks happening because if minor os/vendorhack differences. That really sucks fat cock.
Because every crash causes a 1-star rating, we have to test beforehand. Biggest offenders are Sony and HTC.
Things Google have done recently to combat fragmentation:
.. and certainly much more. I'm thinking the #1 point on the PDK will be significant as we have yet to see the real effect of this. Previously the source code for new Android versions would be released to both the public and manufacturers at the same time, so you'd have teams like Cyanogenmod quickly port and do their own QA on releases using stock Android, while manufacturers had to update their custom UI's against the new version, go through their own rigorous QA processes, go through telco QA processes and timeframes, etc. The end result was updates being released by community teams (excluding Nexus devices) long before manufacturers did, leading to much discontent.
- Announced the release of the Android PDK, a preview-esque version of the new OS available to manufacturers before the official release hits source
- Begun de-coupling official Google apps from the OS and therefore from the update cycle (e.g. Google keyboard, IIRC Gmail and Maps, etc)
- From a 'smoke and mirror' perspective, kept the Android codenames the same across Jellybean (4.1 and 4.2)
- Most recently, "updated" Android completely without actually updating it via pushing updates to core apps and services like Play Store, Music player, sync APIs, etc.
- Adding to above: Held off on releasing a numbered Android update to let the natural cycle for replacing handsets to continue (so people with Android 2.1 phones hit the end of their contracts and buy 4.2 phones)
Sounds like an HTC problem, not a 'fragmentation' problem.
And if you where targeting Microsoft or Apple then stuff like this would be solved by magic?
Here's a thought - Apple and Microsoft ship devices with OS updates that support the hardware in question.
On any Apple hardware that includes BTLE I can use the system frameworks to make use of BTLE.
You can consider that "magic" all you like, but frankly to me it's just common sense.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Every time I see one of these articles preaching on how dangerous the fragmentation of android currently is I get confused as can be. Consider this: I own 2 android devices... one has android os 4.2.2 (most up-to-date) and one has android 4.1.2 (to be updated as soon as Motorola rolls out the stupid update...).
Now let's look at my iOS devices: I own two apple devices as well... one has iOS 4.X and one has iOS 5.X. Both are no longer able to be updated and neither is near current. I understand fragmentation is bad... I can't download at least 50% of the apps in the appstore on the 4.X device and around 25% of the apps on the 5.X device. The worst part is I can't download from alternate stores (like Amazon's app store on android) nor install unofficial versions that are compatible due to Apple's absolute walled-garden approach. I know I *could* jailbreak and just may someday, but wtf?
This is my confusion: why is Android fragmentation worse than iOS? The fragmentation on iOS seems FAR worse to me since the only way to do anything about it is installing an unofficial OS (an option on any fragmented OS, mobile, desktop, or otherwise). There are more versions of Android? Why does it matter? There were so few updates between most Android updates that this seems insignificant. Also, since you can install 3rd party apps on Android without custom OS, the drawbacks aren't so bad.
That doesn't change the practical realities of developing a non-trivial app that runs on more than one device. And I'm not even sure it's true. Dozens of companies have sunk billions of dollars into Android, and Google still doesn't seem to take it seriously. Case in point: the official API docs contain crap like, "upon completing the dispatch, the object must make a cup of tea, return it to the caller, and exclaim 'jolly good message old boy!" And their official developer support policy is "go ask Stack Overflow."