Both ICS and iOS 5 were released at about the same time, iOS 5 is now the majority OS for iOS devices. On the other hand, ICS is available on about minuscule percentage of Android devices.
Software written for ICS won't work on the vast majority of devices and there is little incentive to write for ICS (which will keep hurting Android tablets).
Developers can start taking advantage of iOS 5 APIs today and incentive is growing. At this rate, iOS 6 will be the majority OS on iOS before ICS gets that title for Android.
That's how smart developers always operated. I remember when Id's Quake 1 first appeared ... I could play it on a 2 year old Pentium processor on MS-DOS 6.22, even though Windows 95 was capturing the headlights.
You can start taking advantage of ICS APIs today. It's more work because you have to test and workaround older versions too, but the thing that differentiates Android from other frameworks is that it was built with degradation in mind.
But no, that was clearly not Frasier's point at all. "With Android [...] even Google's own software [...] only runs on the absolute latest version." is a complaint that recent software isn't backwards compatible. And that's just wrong.
Whereas Android users are lucky if they're still getting updates and security patches after 10 months.
For the same reason, Android fragmentation is a non-issue.
No, this did not made the Window ecosystem "fragmented" in the sense that Android is. Windows always had excellent backwards and forward compatibility, which meant you could develop for XP and still run on Vista and vice versa. You just couldn't take advantage of the latest and greatest APIs, but most apps used the classic APIs anyway --you still had access to the whole of the OS and hardware across all Windows versions, even with a custom built C API or MFC.
On Android devices you are cutoff from using tons of features if you can't deploy to the latest versions. And you have to walk a very fine line to make it compatible with all versions/form factors, and mostly cut corners.
For the same reason, Android fragmentation is a non-issue.
A, the classic "lalalala, fingers in the ears" argument.
As to backward compatibility, just like on Windows, it is the developers' responsibility to ensure he refrains from using APIs that are too recent. For example, if you write a Windows Direct3D 10 game, it won't run on XP because this API is only available on Vista and up. Same thing for Android: select the right API level when developing your app! http://developer.android.com/guide/appendix/api-levels.html How is Windows better/different than Android in this respect?
I speak from experience. I have developed on both Windows and Android, contrary to most people in this thread.
which meant you could develop for XP and still
run on Vista and vice versa
That's not the case. A lot of apps and drivers broke on Vista.You should really go and read The Old New Thing, as it's really enlightening: http://amzn.to/wW0Okn
You distinguish between security updates and OS updates. I'm not aware of any difference, an update is an update. I've never seen an OTA update that wasn't a point release. How are these deployed differently?
How is this bad? Do you realize that 4 months ago, 2.3 was the very latest Android version available for phones? Its successor, 4.0, was barely released in Nov 2011 (3.0 was for tablets only). A few months delay is perfectly understandable because vendors need time to customize, build, test, ship, and clear inventory levels of devices running the previous Android version.
> You could, in 2002, run the latest version of Office on all of their operating systems.
This statement does not prove that forward/backward compatibility is easy in Windows. How much time did Microsoft waste into making Office run flawlessly across a wide range of Windows versions? With an application the size of Office (30M lines of code), it is almost certain that it has hundreds, if not thousands, of workarounds for limitations or bugs affecting the oldest Windows versions that Office needed to support.
The difference between Windows and Android is that even if Microsoft finished XP in 2000, they waited until all the manufacturers put it on new hardware to release it. Google doesn't do that. They release it as soon as it's ready, and then manufacturers have to put it on hardware. It's just a matter of perception of who has it "faster".
But I suppose Google could do the same - finish Android 5.0 this spring, and then only release it in winter with a bunch of manufacturers at once.
As for Chrome, this is really an exception, and I don't think you can point any other example where an app only works on Android 4.0. This happened because Android 4.0 is a pretty big overhaul, and Google didn't want to bother with the legacy, when they know that within a year 50% of Android devices will have the 4.0 version. They just wanted to take advantage of all the new API's and not have to find workarounds for the other versions. It's kind of like Microsoft not wanting to make IE9 work on XP anymore, because it's a much different version than Vista and 7.
Is the XP timeline an idle speculation on your part(as seems to happen with your posts about MS) or do you have references to back that up? You couldn't be wronger.
Microsoft regularly shares builds with OEMs so that they can start optimizing their hardware and even publishes beta versions to the public so even small developers can start making their software compatible.
What do we get with Android? For something that's supposed to be open source, the source gets thrown over a wall at release. One OEM does get a head start at the expense of others though.
Microsoft just released Windows 8 developer and consumer previews, did Google do that with ICS?
>It's kind of like Microsoft not wanting to make IE9 work on XP anymore, because it's a much different version than Vista and 7.
IE8 came up almost 10 years after XP. Not to mention that Vista and Windows 7 were on atleast 40% of mahines then and selling on almost 100% of machines. With ICS the numbers are 1%.
It's worth pointing out that this comparison isn't the same. You could, in 2002, run the latest version of Office on all of their operating systems. With Android, there are situations where even Google's own software (see Chrome on Android) only runs on the absolute latest version.
Further, in 2002, all the big name vendors were generally shipping Windows XP on their machines. With Android, vendors are still shipping devices with 2.3. It's still a good OS, but it has to be frustrating as a non-tech user to understand why your brand new Android device can't run software released last week.