The Update Battle: Innovation vs legacy support
The first issue we need to tackle is the basic idea of innovation versus supporting legacy devices. This is a hard line to draw, and often becomes a sticking point with many consumers, because they may draw their lines in a different spot on the continuum compared to the software manufacturers. The basic trouble is that software companies have to decide first how long the life cycle of devices will be. This is often judged based on the overall competition of the market and the cost of the product, which will be the major factor in when consumers will decide to upgrade.
Some markets, while there may be competition, saw long periods without much innovation. TVs have had extremely long life cycles given their cost, because until the mandate for HDTV, there wasn't much innovation that could be made. TVs could be made bigger or lighter, but in general consumers didn't buy new TVs until the old one broke (or you moved and couldn't be bothered to haul out the 600 pound plasma that you had bought,) because there was a limit to how good a TV could be. Now, we're seeing more innovation not only in TV picture quality, but in connectivity to the web and other services.
Computers have seen a better rate of innovation because of the myriad ways they are used, and the various needs that consumers have, but the rate has slowed, because while hardware still gets better, the majority of software innovations these days are on the web, which doesn't really require any more hardware power for consumers. There has been about a 3-5 year life cycle for laptops, depending on your needs, and desktops have been even longer because the cost to power ratio is better on desktops than laptops. Then, there is the mobile space.
As we've talked about before, hardware and software manufacturers in the mobile space have settled into a cycle of 2 years, mainly due to the prevalence of 2-year carrier contracts in the United States and parts of Europe. Some don't like this pattern, but we tend to think it's for the best, because we would rather see more innovation than holding back in order to provide legacy support. It's also important to note that legacy support doesn't just mean older devices like the Nexus One, but current low-end phones. Although, given the 2-year cycle, those often are the same things.
The trouble is that if a company falls too far onto the side of supporting legacy devices instead of innovating, there can be major consequences, which we have seen in the major decline of BlackBerry, in Nokia eventually abandoning Symbian, and in Microsoft killing Windows Mobile in favor of Windows Phone. All were great systems in their time, but failed to innovate enough once the modern generation of mobile smartphone operating systems emerged with iOS and Android.
Apple has gotten unwarranted flak for forcing obsolescence on 2-year old, when it may not deserve the reputation. Every version of iOS has been compatible with the device that was 2 years old at the time of the update. At launch, as with every launch, there was a very vocal minority of users who found that the update caused the performance of their devices to not drop significantly, but Apple has always been able to smooth out those issues in subsequent updates. Rather than force obsolescence on 2-year old devices, Apple has always chosen to hold back certain features either for performance reasons, or hardware reasons.
iPhone 2G was compatible with iOS 3, and the iPhone 3G was compatible with iOS 4, but there were trade-offs that had to be made. Aside from possible performance issues with some users, the iPhone 2G did not support MMS or stereo Bluetooth, which were two of the major features of iOS 3. The iPhone 3G did not support multitasking, which was the biggest feature of iOS 4. Now, the iPhone 3GS does support iOS 5, and has not had any reported issues with performance, it does not support the persistent location awareness/notifications offered in iOS 5. While all of these features were more major features of each update, they were also just one or two of a huge set of feature updates in each of those new versions of iOS. Apple has also obviously held back Siri from compatibility with any other devices. Siri has been hacked and ported to both the iPhone 4 and iPad 2, and doesn't really work on those devices only because of not being able to communicate with Apple servers. So, making Siri an iPhone 4s exclusive seems to be more of a marketing decision rather than one based on performance issues.
Of course, while Apple has added many new features over the years, none has been exceptionally resource intensive aside from multitasking. Apple hasn't made any major changes to the look and feel of iOS aside from wallpapers and folders, so Apple has been able to innovate as it sees fit without worrying too much about the system itself hogging unnecessary amounts of resources. Because the iOS UI has stayed relatively the same, the major driving force behind iPhone hardware iteration has always been in the apps, more specifically in games, and making games run better often with a strong focus on bringing a better GPU with each iteration. Additionally, the iPhone has always had plenty of storage, so the overall size of the system has never been much of an issue.
These are all benefits of Apple's closed and controlled system, where it dictates what works where and can easily control features and how the system runs on the hardware. And, especially now that the iPhone 3GS, as the 2-year old hardware at this point, has stayed in stores as the free option in the line of iPhones, Apple has a vested interest in making sure that it can easily run iOS 5. Android is a much more messy ecosystem, and will be much more difficult to dissect.
Google doesn't have the same luxuries as Apple because of the makeup of the Android ecosystem, which makes it extremely difficult to remove specific features on lower-end devices like Apple can, and because of way it has chosen to design Android. Android, as Kevin Marks often says, is designed in two parts: the bottom half is the open-source part, which can be used by anyone on any device. This is the half which is the base for many ultra-cheap handsets, as well as the Barnes & Noble NOOK Color and upcoming Amazon Kindle Fire. The top half is the "with Google" piece. This includes all of the Google apps like Maps, Talk, and Gmail, as well as the grand unifier of the Android Market, which is essentially what creates the Android ecosystem as we know it. There are no requirements for the bottom half as it is free and open source, but the top half does come with requirements from Google, though they are notoriously lax.
Because Google doesn't mandate a certain amount of internal storage, phones from the Nexus One era shipped with a max of about 512MB of storage (some had more simply to accomodate the Sense UI and other manufacturer overlays.) This became a big bottleneck for the Android system in a number of ways. Obviously, it meant a limit on the number of apps and the size of apps which could be installed. Google brought in Apps2SD as a workaround for the issue, but came with its own problem in that widgets were unavailable for apps installed on the SD card. Limited storage also meant that the size of the OS couldn't grow either, especially with manufacturer UIs taking up chunks of that storage.
Now with Ice Cream Sandwich, Google has added quite a bit of visual flare to the historically spartan and utilitarian Android UI. Because Google has made just about everything more graphically intensive (therefore resource and storage intensive), the Nexus One has been left behind. It isn't a matter of CPU speed, because the Nexus S will be getting the update and it is also a 1 GHz single core CPU. The major difference is in the GPU packed in the Nexus S, and in the added storage space. These are also not exactly new features that can easily be stripped out in order to accommodate older low end phones, because while ICS has added a many nice under-the-hood features, many of the improvements of ICS including the new People app, multitasking design, and subtle animations are all tied to the new UI. If Google stripped out most of the UI improvements to make a "lite" version, that would create two different looking versions of stock Android. Given the complaints Google has been getting for allowing manufacturer skins, and that kind of fragmentation of the market, there's no way it could release two versions of stock that look different, especially since the goal of ICS was to create a consistent and prettier UI.
Of course, the reasoning behind why the Nexus One and other similar phones will likely be left behind with the Ice Cream Sandwich update are only part of the story. The other part is in the timing. And, the biggest trouble with the timing of this bump is that the Nexus One was delayed and didn't come out for the 2009 holiday season as it was planned, so many users with it, or devices with similar specs, won't be eligible for the official ICS update, and also aren't close enough to the 2-year upgrade.