Boot Camp Redux

Sunday, 2006-04-09; 01:13:00



Now that things around the Mac web have settled down a little bit after the initial release of Boot Camp, I thought it would be good to address a few points and give a few clarifications about my earlier piece on Boot Camp. In case you haven't noticed, not many people around the Mac web share my fear about this whole thing. In fact, two of my favorite Mac pundits, John Gruber and John Siracusa, both have refuted the assertion that Boot Camp will ultimately be detrimental to the Mac platform. One of my friends has even called those who take my position "idiot[s]". While I don't too much appreciate that kind of sentiment, it does seem that the overall impression of Boot Camp is that it's a positive development, not a negative one. First of all, though, let me specifically make some clarifications on my original post.

Clarifications

First off, I noted that Boot Camp offers the ability to non-destructively resize a partition. Apparently, that is now a standard feature of "diskutil" in Mac OS X 10.4.6, the command-line tool that powers Disk Utility. Sadly, this feature only works for GPT partitioned disks, which, as far as I know, is a format only supported on Intel-based Macs. Us PPC-users still don't get built-in non-destructive partitioning for our disks. (GPT apparently stands for "GUID Partition Table", and is part of the EFI specification. PPC-based Macs use the APT format, which stands for "Apple Partition Table". Do note, however, that GPT and APT are not file-system formats. Intel-Macs still use Journaled HFS+ as the filesystem.)

Second, it's worth pointing out that while Boot Camp is free, Windows XP is not. So if you want to run Windows XP on your Mac using Boot Camp, you still have to go out and buy a copy of Windows XP, which will set you back $199 or $299, depending on whether you want the crippled Home version of Windows XP, or if you want the Professional version. That means that buying Apple hardware to run Windows XP is still significantly more expensive than buying a regular Windows PC. However, for those who want to primarily use Mac OS X, this might now be a more attractive option. (While Apple officially states that you need a disk with Windows XP SP2, there does seem to be a way to slipstream the SP2 service pack in to older Windows XP installation discs so that they will work with Boot Camp. By the way, "slipstream" is a really cool word.)

If you're wondering about virtualization, look no further than Parallels. It allows you to use Windows and many flavors of Linux all inside the comforts of Mac OS X; it does, however, require an Intel-processor (what doesn't these days? :P ). It's currently in beta and has an uncrippled free download, but the price of the product is going to be $49 -- $39 if you preorder. (No word on whether you can get a free copy by reporting bugs in their beta software.) This is similar to how VirtualPC worked in practice (but definitely not in the technical details): the operating systems run with Parallels are encapsulated in separate windows, but Mac OS X is the only one that you can't "turn off". I believe that virtualization means that the virtualized operating systems can directly access hardware. Contrast this with emulation, which translates API calls from the emulated operating system to the native operating system. Also note that Parallels is powered by Intel Virtualization Technology, which requires a Core Duo processor -- that means this technology will run, but not as well, on the low-end Mac mini.

Finally, let me clarify about not being able to transfer data between the Windows and Mac OS X partitions of your hard disk: this only applies if you format your Windows disk using NTFS. If your Windows partition is smaller than 32 GB, you're free to use the FAT disk format, which is just as fast (but has a few security downsides, from what I hear: not sure about the specifics). Mac OS X can read and write to FAT-formatted partitions, so you'd be able to exchange data in these situations by booting into Mac OS X. 32 GB seems more than enough, anyway, assuming you're really going to try to use Mac OS X as much as possible.

On the Windows side, if you want to read your Mac-formatted partitions, MacDrive comes to the rescue. It allows you to "seamlessly open, edit and save files from Mac-formatted disks". MacDrive will set you back an additional $50, and don't expect Windows to start including the ability to read HFS+ disks anytime soon.


Rebuttals

So my favorite Mac pundits think that Boot Camp is a boon for the Mac platform, eh? Well, let's see what they have to say. Gruber writes that Windows is "the new Classic":

The fear that Windows-on-Mac-hardware implies the eventual death or marginalization of Mac OS X is baseless. Sure, third party developers could start using “Just boot into Windows” as their answer to questions regarding Mac support, but this is no more likely to be popular or successful than it was for developers whose OS X strategy was “Just use Classic”.

This is a move of supreme confidence — Apple relishes the comparison between Mac OS X and Windows XP, and Microsoft has shown enough of Vista via its widely-available beta seeds that Apple quite obviously isn’t afraid of that comparison, either.

Windows is so ubiquitous that the vast majority of Mac users are already quite familiar with it; I see no chance that Boot Camp is going to cause any Mac users to realize that they’ve been missing out on something better. But from the other side, Apple is confident that most Windows users who give Mac OS X a shot are going to prefer it — again, much in the same way that most long-time Mac users preferred Mac OS X to the old Mac OS.

In the same way that Mac users found themselves in a race to go Classic-free after switching to OS X, and that running apps through Classic was viewed from the get-go as something to be done while holding one’s nose, so too will Windows be viewed in the post-Boot Camp world.


Basically, Gruber is saying that the Windows --> Mac OS X transition is identical to the Mac OS 9 --> Mac OS X transition. But there are a few fundamental differences that make the whole deal with Boot Camp completely different.

First of all, once Mac OS X was released, Apple had no qualms about saying that Mac OS X was the future of the Mac platform. Mac OS 9 was going to be the end of the line for the Classic Mac OS. In fact, Mac OS 9.2.2, the last incremental update to the Classic Mac OS, was released in December 2001, scarcely 3 months after the release of Mac OS X 10.1. It was clear that Apple was being agressive in its move to Mac OS X, and anyone who didn't jump aboard the train was going to quickly be left behind. If I remember correctly, Apple started making Mac OS X the default operating system in January 2002, and held a mock-funeral for Mac OS 9 in July 2002 at their annual WWDC developers conference.

Just look at how fast Apple started developing only for Mac OS X. iTunes 2 was the last version that worked on Mac OS 9. iMovie 3 was rewritten in Cocoa, and along with dismal performance came the lack of Mac OS 9 support. iPhoto didn't even arrive on the Classic Mac OS at all! It came out of the gate as a Mac OS X-only application. Other developers quickly followed suit. What's more, since Cocoa made it much easier to develop apps for the Mac platform (indeed, it's what made me get into the Mac software development industry), a bunch of new apps started appearing that were Mac OS X only.

This isn't the case with Windows. Windows is not going anywhere. In fact, Windows is going to get a major update in January of next year: Windows Vista. It's going to take years, if not decades, for Windows to disappear, if it even happens anytime soon. So Windows developers don't have a fire under their butts.

Secondly, Mac OS 9 had an installed base of around 10%. (Note that "installed base" is different from "market share". "Market share" refers to the percentage of computers that were sold in the most recent year-long period that were Macs. "Installed base" is a measure of the percentage of all computer users that use Macs. It's theoretically possible, then, for a platform to have a 95% market share and a 5% installed base, or a 5% market share and a 95% installed base.) So with the Mac OS 9 --> Mac OS X transition, we were talking about moving 10% of all apps on any platform to Mac OS X.

Windows has an installed base of around 90%. That means if there were to be a mass exodus of users from Windows --> Mac OS X with Boot Camp, we'd be talking about moving 90% of all apps on any platform to Mac OS X. This changes everything: the inertia is going to be vastly in favor of Windows, because of the sheer number of apps that already exist for the platform.

Take a company that produced Mac OS 9 software. Once Apple released Mac OS X, the writing was on the wall: start supporting Mac OS X, because that's where consumers were going to be going. With this Mac OS 9 --> Mac OS X transition, the number of potential customers for this company started to dwindle because of two factors: 1) Mac OS X had many substantial benefits over Mac OS 9, which pushed consumers to use Mac OS X, and 2) other software developers were creating new and updated software for Mac OS X, which further pushed consumers to use Mac OS X over Mac OS 9. The target market of this company started at 10% at the release of Mac OS X, and started dwindling until they produced carbonized versions of their software.

Now take a company that produces Windows software. The current target market of this company is close to 90% ("close to" not only because of the uncertainties of the installed base of Windows, but also because there is a small subset of Windows users who are still running Windows 98). With the release of Boot Camp, their target market did not decrease, but it immediately increased. Windows isn't going away, and indeed is still being improved by Microsoft. Not only that, former Mac users now have the ability to install Windows on their hardware! So the target market for this company just jumped to 100%, and is going to stay there. Of course, Mac users don't instantly get to run Windows software natively, because Boot Camp isn't supported on PPC-based Macs, but getting an Intel-based Mac is part of a natural upgrade cycle for Mac users.

Sure, Mac OS X offers substantial benefits over Windows, just like Mac OS X did over Mac OS 9. But that's not really the point: since many of the self-professed switchers are now going to be using Windows on their new Intel-Macs anyway, the target market of this Windows company is not shrinking at all. Until Apple releases Intel-based Macs that do not support Boot Camp (which is not going to be anytime soon, given that Boot Camp just came out on Wednesday), the target market of this Windows company is not going to shrink a hair.

Furthermore, since Windows is not going away, there are still going to be a substantial number of Windows developers, so the inertia of these apps (remember, they represent 90% of all apps on any platform) is going to make the switch to Mac OS X a very slow one. The "half-life" of Windows apps (that is, the time it takes for half of the Windows-only software of an arbitrary Windows user to be available on the Mac) is going to be very long -- much longer than the "half-life" of Classic Mac OS apps.

This Windows company is going to look at the current situation. Their target market is now 100% of all computer users, which means that they might even gain a few customers as a result of the release of Boot Camp, even though their software is still Windows-only. Furthermore, since they don't have any experience creating Mac OS X software anyway, they'd need to expend a considerable amount of resources to make a version that ran on Mac OS X. The net profit in doing nothing is going to be positive, while the net profit in creating a well-designed Mac OS X version is probably going to be negative for the first few years or so, assuming that the Mac does gain market share anyway! (Another side effect of Boot Camp is that "runs on the Mac" no longer is synonymous with "runs on Mac OS X". *sigh*)

Also, please note that a port does not quality Mac OS X software make. Remember, Windows developers have no experience writing software for the Mac. They're used to creating apps that have half-assed interfaces with options hidden in contextual menus, that use command key sequences unconstrained by the likes of the Apple Human Interface Guidelines, and that rely on the Windows directory structure -- one that is much different, less well-defined, and less standardized as compared to Mac OS X's structure. So even if this Windows company decides to make a Mac OS X port, it's no guarantee that Mac users are going to flock to buy this product in droves. In fact, it's much more likely that an upstart Mac OS X-only developer will come along and create a Mac OS X-only alternative to this piece of Windows-only software.

Remember Google Earth? Once the Mac version was released, all I remember hearing (and this was, in fact, my own reaction) was how horrid the interface was. Google Earth sticks out like a sore thumb on the Mac, even if it is a cool demonstration of technology and satellite imagery.

To sum up, this Windows development company immediately gains revenue in the short-term, and would need to expend a considerable amount of revenue to create a Mac OS X-native application that wouldn't guarantee a significant gain of revenue in the long-term. Show me again why this company would be pushed to make Mac OS X software?

I would like to point out that Mac users are already relegating themselves to using Windows to run certain pieces of software. For example, Autodesk will probably gain some purchases of 3ds Max and AutoCad by Mac users, even though both are Windows-only software. Windows game developers will also probably gain some Mac customers in the short term. Where's the outrage over not having a Mac version? Where are all the Mac users writing Autodesk to voice their support for a Mac port? What happened to all the Mac loyalists encouraging some new indie Mac developer to create a viable alternative to 3ds Max and AutoCad? They've all shut up and started using Boot Camp, that's what. So Boot Camp has also made it easier on Windows developers in another fashion -- they get to deal with less complaints that their software doesn't run on the Mac.

And this brings us to John Siracusa's article, which dealt with my argument (although not necessarily my specific points) more directly. Siracusa has this to say about the Mac gaming market:

This realization leads to a dark truth, however. What happens when the directive to "just use the Windows version" is not met with a derisive sneer, but with an eager smile? "Yes, please!" Not possible? You just saw it happen a few paragraphs ago when I expressed my willingness to boot Windows to play Crysis, et al. Ah games, always a special case. The grim calculus of Mac gaming is as follows.

Computer games are developed primarily for Windows. With Windows holding down 90% of the PC market, this won't change any time soon. Games are heavily optimized, and those optimizations are at least partially Windows-specific. If a Mac port of a game exists at all, it's almost always slower. Sometimes it has more features or looks better than the initial Windows release, but only when it's released much later. "Later and slower" are not music to a gamer's ears.

Add to this Microsoft's ongoing campaign to migrate each and every PC game developer to DirectX, an API that does not exist on Mac OS X. This makes porting games to the Mac even harder, and adds another layer of abstraction to further impair performance.

Finally, games usually don't show any part of the OS at all, so they're effectively immune to Mac OS snobbery. All games are equally "Mac-like" (or "un-Mac-like," depending on how you look at it) once they're up and running full-screen. At that point, the OS is no more important to a PC gamer than to a console gamer.


To paraphrase, Siracusa thinks that games are a special case of the Windows apps market because of DirectX and because of the fact that the interface perception is less of a problem with games since they're usually fullscreen. In the comments, he makes it a little more explicit:

I thought I addressed it a little. To sum up, it's a small market already and it's unique in that it's almost entirely independent of the OS in terms of user experience.

The thing is, I don't see how this argument holds a drop of water! Yes, games are a small market for Mac users, but the same can be said for any segment of the Mac software industry. The fact that Mac gaming is a small market is not because of the "gaming" part, it's because of the "Mac" part. I'd be willing to bet that the same percentage of Mac users and Windows users are hard-core gamers that have a console like a GameCube, PlayStation 2, or Xbox.

The whole thing about DirectX is a fallacy as well. There are just as many non-gaming apps on Windows that use Windows API calls to accomplish their tasks! You can't just port any old Windows application to the Mac -- you need to translate the whole thing so that it uses Mac OS API calls. The fact that there exists a WINE project at all -- an "Open Source implementation of the Windows API on top of [...] Unix" -- demonstrates that many apps rely on the Windows API. The DirectX framework is just as non-existent on Mac OS X as the Windows API is, which means that porting Windows apps to the Mac is going to be just as hard as porting Windows games. This is especially true with regards to the Intel transition: whereas before, developers in the business of Mac game porting would have to also re-optimize their ports for the PowerPC, this barrier no longer exists with the new Intel-based Macs.

Windows game developers already have the ability to create games that use OpenGL instead of DirectX. OpenGL isn't a newcomer to the computer industry, either. So if Windows game developers were smart, it'd be relatively easy to create a game that could be ported to the Mac in no time, as long as they base it on OpenGL. Remember, since the user experience with games isn't as much of a problem, there's going to be more time spent programming in OpenGL rather than the Windows API: this means that it might be easier to port Windows OpenGL games to the Mac as compared to typical Windows apps. (Caveat: I am not a Windows programmer, an OpenGL programmer, or a DirectX programmer, but I'd like to point out that neither are John Siracusa or John Gruber. So we all are making a bunch of assumptions.)

If you want proof, look no further than Blizzard Entertainment. Since at least StarCraft, which was released in 1997, Blizzard has consistently been releasing their games simultaneously for the Windows and for the Mac. (For reference, Mac OS X was released in 2001, so Blizzard was doing simultaneous releases even for the Classic Mac OS!) Don't give me this crap about other game developers being unable to do so. They're just unwilling to do so, because there's no incentive! Sales are not going to be dropping anytime soon, and they'd gain little revenue from creating Mac versions of their games.

So tell me again why gaming is a special case?

Conclusion

To sum up, I think the majority of Mac pundits are wrong on this one. I am actually holding my breath, because I like my pretty Mac OS X operating system, but there's got to be a serious switching exodus in order to counteract this slow slide to oblivion. Boot Camp, you are evil incarnate.


Technological Supernova   Rants   Older   Newer   Post a Comment