New Android and iOS "fragmentation" charts are just as flawed as the term
phonearena.com
phonearena.com
Android is, by definition, a "defragmentation platform". It allows companies to basically make their own operating systems but stay binary compatible through a common standard. The term "Android fragmentation" really just describes the fact that the defragmentation only works 95% instead of 100%.
It's still much more fragmented if you want to support devices outside the Android ecosystem. Try making an app that runs on the Galaxy S2, the HTC One and the Nexus 4. Then make one that runs on the Galaxy S, the iPhone 5 and the Lumia 720.
What an absurd argument. There's a difference between platform fragmentation and having industry competitors. The fact that there are other mobile OS's does not reduce or negate the fragmentation within Android's ecosystem.
As for Android "by definition" being a "defragmentation platform," I think you're drunk on Koolaid. Android's operator-indulging multi-platform strategy makes it the very definition of fragmented.
The fact that such an obviously blinkered post reaches the top of HN comments speaks volumes for Android fanboyism on HN.
Android did certainly not fragment the market. There were thousands of devices with incompatible software systems out there before Android came along. Android is not responsible for all the companies and form sizes and UIs and operators. These were all there before 2008. Android just made it possible for developers to target all these devices with the same codebase.
Otherwise, OS is a perfectly clear term, Samsung and Motorola use the same OS, Android. Amazon uses a customized version of Android. iOS is a completely different OS.
It's not like you need a new binary for each platform, but the screen sizes, device capabilities, and whether or not the drivers work properly differs across devices. Enough so that an app which works fine on some devices might not operate properly on a specific device or a certain manufacturer's device line.
Even if Microsoft got ahead and released Windows Phone early (which they didn't), you would've still had "hardware fragmentation" for developers. You would need to work with different resolutions, just like today, and with hardware from 600 Mhz ARM11 to quad-core 2.3 Ghz CPU's (same for GPU's).
And of course WP would need to be on the same amount of hardware Android is today, not just on the 5 models it is today due to the poor adoption. And it would need to support more than just Qualcomm's chips, and same goes for other components. The point is, the situation wouldn't be much better.
So Android did solve what could've been a big problem, and it's almost as good as it gets for this kind of situation (it can be better, but that requires not just technical solutions, but commitment from other OEM's too, to actually do what Google is asking them in order to further standardize the platform, but unfortunately many still want to go in their own directions).
The truth is this things are "no worse" than they were with other platforms before, it's just that Apple made it "better" for developers, but only because they got lucky (sort of speak) to get hundreds of millions of people to buy just one device that developers need to target - and get away with releasing it only once a year.
That's pretty unheard of, and it's the exception that proves the rule, I'd say. If you want everything to be "just like iOS", you'd probably have to get all of the world's inhabitants to use the same device - the iPhone. But that's kind of ridiculous, isn't it?
It bothers me a lot that nexus devices I purchased this year will be long forgotten months from now when Apple is prepping an iOS 7.1 beta for the iPhone 4 as we speak.
I know that google's model is to update core functionality through applications rather than via whole operating system updates but it's annoying that google doesn't strong arm the abusive carriers/vendors into allowing updates to the underlying OS in a timely fashion.
It gives the impression that an android device is what it is at the time it is purchased but an Apple device may evolve. I consider it extremely odd considering how Google has proven to themselves over an over that that upgrading people's common denominator platform is a great strategy (Chrome).
Carriers and handset manufactures have too many interests into product differentiation.
I've been seeing this expressed since the days of eclair, it was kind of audaciously false then, and its only got less true since.
Now we're at the stage were you can claim your phone will soon be "long forgotten" in one paragraph, admit that Google provides updates for core functionality via the app store in the next, then claim your device can't "evolve" in the one following that.
If you want to complain about OS updates, that's fine. But claiming devices are frozen in time when they leave the store is insane. The very definition of a smartphone is that you can install and update apps on it. The ecosystem around Android has been growing faster than anything Google could achieve alone.
Contrast this to iOS - whenever there is a new iOS version, developers have to scramble to update their apps because they very often break or the UI is broken by changes, etc.
Android is much much less hassle when OS updates roll around, and I develop for both.
[Rant]: I find that it gets a bit silly in iOS land, in the sense that local (South African) devs who have abandoned/flopped apps had to go and update their apps after forever to match the 'look and feel' of the new iOS, whereas with Android one can go without noticing that.
It is just impossible to test it everywhere. I can't afford to purchase 700 devices to test on and the client can't afford for the QA on all those devices.
Products have to be pushed into the marketplace and then you have to react to the idiosyncrasies of each platform.
I'm dealing with an issue right now where my galaxy tab runs an app just fine, but a customer's sony device isn't reporting that it is connected to the internet.
It is a real issue because this isn't an issue with iOS and most of the time customers delay their android release because of the testing and quality control issue.
Android runs on all kinds of devices from different manufacturers.
Windows runs on all kinds of devices from different manufacturers.
I can write a program that runs nicely on pretty much any Windows box pretty easily. To do the same on Android is more painful (but that's mostly because desktop applications deal with varying screen resolutions more gracefully than mobile platforms).
I can upgrade pretty much any Windows box to the latest version of Windows.
I cannot upgrade most Android devices to the latest version of Android.
Swap "Linux" for "Windows" if my use of a commercial analogy offends your sensibilities.
Now, part of this is a problem with the phone market. But is Android fragmentation on tablets any better?
I have an iPhone and wanted to convince people to use Threema instead of WhatsApp. Only 1 person wanted to give it a try. I was happy. It's a start.
But he has an HTC Desire HD. He is stuck at Android 2.3 and wasn't able to install Threema.