Speculation hit the fan a few days ago when CNet (and WSJ?) reported that Apple would end its partnership with IBM and Motorola, and switch from using the PowerPC to using the Intel x86 architecture (I had heard the rumor even earlier through some old friends). Knowing this is almost meaningless, because there are so many details missing. For example, will Apple simply start manufacturing x86 computers that can run Mac OS X or (shudder) Windows? Does that mean that Mac OS X would run on any x86 PC?
Almost certainly not. Despite soaring sales of iPods, Apple's income comes almost entirely from the sale of Macintosh hardware. Releasing Mac OS X for x86 would kill their Macintosh hardware sales, because very few people would continue to go to Apple when they could get machines elsewhere for much less. I don't see any way Apple can make the switch without a significant drop in income.
But that's not the real problem. Apple could still make x86-based hardware that runs Windows, but allow Mac OS X to run only on their hardware. This would piss people off, but it's completely feasible (I'll post another entry about how sucky it will be for loyal Mac users to switch to x86 hardware).
The real problem is much more complex and subtle. And at first blush, doesn't sound like a problem. It sounds like a windfall for Mac users. Try to follow along.
Picture this: Apple makes the switch to Intel-based hardware. Mac OS 10.5 is released and runs flawlessly on it. All of your favorite apps release updates (never mind that these will be expensive upgrades, not maintenance releases), even Metrowerks. Then, using the knowledge gained from the 68K-PowerPC migration and a clever adaptation of WINE (an open-source implementation of the Win32 API), Apple adds the most significant feature: the ability to double-click a Windows application and run it on your Macintosh. No Virtual PC, no separate environment, no Start menu.
It's not that big a stretch. The windows might even look like Aqua windows. No doubt it would be a boon to Mac users, and would remove serious hurdles to Mac adoption across all market segments.
Mac users would notice a difference. See, Windows applications generally suck. While Apple could put the window close box in the right place, the OK and Cancel buttons would always be backward. Text selection in fields would be different (although Mac OS X kinda broke that anyway). Pressing the Tab key would tab through all of your controls, regardless of your system settings (although maybe some apps could be made to respect those settings). In many cases, menu shortcuts would require that you use the control key, not the Command key, to access them (no, you would not simply be able to replace "ctrl" with "command" inside WINE…for many reasons I can't get into here). I could write an entire article about differences between Mac and Windows apps, pointing out the real reasons why Windows is inferior to Mac OS. But I think most of you understand this. The Windows UI is fundamentally different from that of the Mac.
OK, so you say to yourself, so what? I've had to run VPC for years, I'm used to that. It's only in the one app I have to use, but now I can have it run fast? Sign me up! This is a perfectly understandable reaction. There's no reason a Windows app couldn't run at nearly the full speed of its Windows XP counterpart (there would be some overhead mapping I/O to the Mac OS, but not much; double-buffering windows takes time).
Now imagine you're a software developer making an application for both Mac and Windows. Your Mac customers comprise, generously, 15% of your market share (you've got more competition in the WIntel market). In reality, it costs you to work on the Mac version enough that your Mac margins are pretty slim, but it's still more income overall.
All of a sudden, Mac OS X/x86 is released with WINE. It doesn't take you long to realize that you will lose only a few of your Mac customers if you drop the Mac version of your product, because now they can run the Windows version just as easily. Sure, it'll take a year, maybe two, for Apple's base of Intel users to grow enough. But the old version of your app will still be available for your Mac customers who don't switch.
But you'll save so much money on development! Now all you have to do is make sure each new version of your Windows app runs on Mac OS X/Intel! And you won't have all of the marketing costs associated with delivering multiple versions of your app. What a boon!
If this sounds alarmist, it's because I haven't explained it well enough. (I have to get back to work, and I've already spent too much time writing this.) But think it through. Software developers who've made Windows and Mac OS versions of their applications will inevitably drop their Mac efforts. It's in their bests interests. Most people don't care enough to do more than grumble. They need the functionality, hamstrung as it is, to do their work. They will continue to pay for the application, especially because they can run it reasonably well. Mac-only developers will rarely, if ever, be able to profitably compete with established Windows applications. The growing momentum to provide Mac versions of applications will stop dead in its tracks.
It may take a few years, but you will slowly see the erosion of the Mac into an elegant OS for launching crappy apps.
And how long after that will once-loyal Mac users simply switch? There are so many more hardware choices in the WIntel world. Apple can never allow Mac OS X to run on that hardware, so we users won't see that benefit if we stick to the Mac. And once all our important applications are available only in their Windows flavors, what's to keep us using the Mac? Safari? Mail? iMovie? Sure, there will be some who stick around, like those who use FInal Cut Pro 90% of the time. But most of us? What would be left?
All of this is predicated on developing an architecture that allows Mac users to "painlessly" run Windows applications. Does anyone believe that will never happen?
The move is certainly bad for us. Within a few short years, we will lose many of our native Mac applications. But within a decade, it will be bad for Apple, too, as users abandon a platform that's lost all its advantages.