I've often complained that one often has to spend a cool grand more on Mac hardware than similar Windows hardware. It's often more like $500-700 now, but the Mac Tax is still there, especially in games. You'd have to wait months after a Windows release to purchase some subset of Windows games for the price of that game when it was released. That is, you had to buy long in the tooth games on Mac for the price of new games on the PC, and you had nearly zero access to the used market.
Well, that's also been the case for iTunes and the iPhone. Gizmodo updates us on the iPhone 4 Mac Tax.
In other words, Apple will reach back in time 9 years to make the iPhone compatible on PCs but only 3 to make it compatible with their own computers. So much for the advantages of a closed infrastructure!
Part of this is due to the combination of hardware and software in one company. This forced upgrade is precisely why, if Apple ever gained the marketshare that Windows has, the government would almost have to step in to ensure the power to force upgrades isn't abused.
Let me explain. Microsoft has to make sure companies that deploy on its dominant OS rest easy that their apps won't break when their user base moves from, say, XP to Vista or Windows 7. Enough change from the last OS, and guess who gets left in the cold? It's not the user and their favorite apps; it's the OS. People will keep using XP, and they can keep using XP precisely because MS doesn't control hardware. Windows has to work on computers that meet a certain standard, and hardware makers, like Dell, can keep putting out new hardware that works with XP. You can't strongarm a move quite as easily as Apple can.
Visual Basic 6, a language Microsoft ended "mainstream" support for five years ago, still works on Windows 7. Now, Apple does do something similar. They couldn't have Microsoft Office break in OS X, so they kept Rosetta active to make sure their biggest third-part software providers kept running. Same with Photoshop and Carbon. Apple bent over backwards for each major software interest on their OS. Microsoft has lots more people interested, and the degree to which their tools continue to produce apps that work on older OSes has to stay very broad. Microsoft's position requires their culture, one that helps developers.
Now maybe if Apple had more share, they too would have to kowtow to developers a little more diligently. I don't think that this is part of the Apple mentality, however. They've broken Java compatibility, the one spot I'm most familiar with, over and over, and have given and stolen back API calls from within Java with impunity. Look also to their attitude with Flash (and Java, etc) on iOS. It's their way or the highway. Heck, look at the move from OS 9 to OS X or PowerPC to Intel! They completely obsoleted an entire chip architecture. That's Apple's culture. Want to use a camcorder with a Firewireless MacBook? Buy a new, USB camcorder, Jobs writes. No, really. That's his answer.
This is a long way of saying the reason the iPhone syncs back 9 years on Windows and 3 on OS X is entirely Microsoft's fault. The tools and software libraries used to make iTunes on Windows work on XP. That's a Microsoft decision. If Apple wanted, they could introduce artificial walls to make iPhone 4 Windows 7 or Vista only, but it's be artificial. More importantly, in a world with options in software, hardware [if not OS], lots of users will simply not use an iPhone. More to the point, Apple's arranged it so that people without the income or interest in upgrading something that works fine already in a few years aren't in their target market. Your barely Outlook literate aunt isn't buying an iPhone. Jobs doesn't want her to. But Windows will support her, and when she does replace the 10 year-old computer, it'll likely be another, well, whatever. eMachine?
I've always been impressed with Microsoft's coding tools. Occasionally they get overly happy with embracing and extending, but as long as you're writing on Windows for Windows, you'll be hard pressed to find a better, more fully fleshed out set of objects than MS's. Microsoft's coding tools encourage backwards compatibility as a rule. They've got too many developers and too many hardware choices not to take this open-minded approach, ironic as that sounds when said about MS. It's a cultural thing.
Let's sum: Jobs makes cool; Microsoft makes tools. If a coding library breaks or is too tough to support on Apple, Jobs will tell you that's just too bad. Buy a new Mac.