Saturday, June 24, 2006


(updated below)


There are some very interesting “screenshots PastedGraphic3-2006-06-24-19-18.png” that have recently been released purporting to be of the next version of Mac OS X, 10.5 “Leopard.” The most tantalizing thing about these supposed screenshots is that apparently, Windows applications (in this case, Internet Explorer 7) can run natively on a Mac under OS X in Leopard.

If true, this is revolutionary. Windows and OS X applications running concurrently on a Mac? This is the Holy Grail of computing. Now, I don’t know if these screenshots are real or not. If they’re fake, they’re superbly done. But here, it doesn’t matter; I just want to talk about the idea, not whether or not Apple is actually doing it.


Now, there are positives and negatives to this idea. Before we go into them, let’s examine exactly what we’re talking about here. The new Macintoshes (as of 2006) are now based on Intel processors instead of the old IBM/Motorola/Freescale PowerPC processors. Since Intel (or Intel-compatible) processors power all Windows (and Linux, for that matter) PC’s, that introduces a potential level of compatibility between Macs and PCs impossible previously. Already, Apple has released software called Boot Camp PastedGraphic14-2006-06-24-19-18.png that allows the new Intel Macs to boot into Windows XP. Now, this is a separate boot situation: You can turn on your computer and have it be a Windows PC, or turn it on and have it be a Mac. While this is useful (for more details see my previous post on the subject) for occasionally running Windows-only software like games, it’s anything but seamless, and there’s almost no real benefit besides saving desk space over just buying an actual PC. The recently released Parallels PastedGraphic14-2006-06-24-19-18.png software is another option for running Windows on your Mac: It provides an environment similar to the old Virtual PC PastedGraphic14-2006-06-24-19-18.png, where Windows, and Windows applications, run in a window on your Mac. This is better than a dual-boot situation; you may lose a tiny bit of speed, but not much, because Parallels on an Intel Mac is not an emulator like Virtual PC on a PowerPC Mac; it’s a “virtualization machine” and therefore runs at near-native speed. The problem with it is that it’s still not seamless. Parallels is one application on your Mac; all your Windows applications run within that application, in a window with the Windows desktop in it. Functional, but ugly, and a bit of a pain to work with.

The ideal solution is something called a “compatibility layer.” This will allow Windows applications to exist side-by-side with Mac applications—completely seamlessly. Done right, the only way you’ll know which kind of application you’re running is by how it (the application itself) looks and behaves. Instead of being like having a Windows machine on your Mac, it would be like simply running Windows applications in the same way you run Mac applications. In a perfect world, Windows apps would exist on your hard drive right next to your Mac apps and documents and files, with the only distinguishable difference being in the icon. Mac OS 9 (Classic) applications work exactly like this on PowerPC-based OS X machines now. There is currently no way to do this, but the Darwine PastedGraphic3-2006-06-24-19-18.png project is working on it, and this is what is promised by the Leopard screenshots mentioned above.


What are the ups and downs of this last method? Well, the ups are obvious. Being able to run any Windows application natively on my Mac without having to deal with the horrid Windows operating system is, as mentioned above, the Holy Grail of computing. There have been many times where some service or game or function that I wanted to access or use was only available for Windows, and I didn’t have a Windows machine or emulator, so I and my beloved Mac were left out in the cold.

The downs are a little more interesting. Viruses are obviously the biggest threat. I don’t need to describe here how horrible the virus situation is in the Windows world. Running Windows on your Mac obviously exposes you to virus risks that are currently nonexistent for OS X. Dual booting is no more or less risky than simply using a Windows box. Your Mac is a Windows box then. The situation is similar running virtualization software; whatever partition of your hard drive is dedicated to Windows is vulnerable to Windows viruses. The virus risk for compatibility layers is an unknown; we’ve never seen one in the wild, so it’s hard to tell. There’s reason to hope, for solutions like Darwine, that the virus risk would be somewhat lessened, as you’re running Windows applications, but not Windows itself. With the hypothetical Leopard version, however, it doesn’t look like that would apply, as the screenshots imply that Windows is running in the background (just like Mac OS 9 does for Classic now). It could even increase your Mac’s exposure to viruses if, as I suggest above, Windows applications reside on the same logical drive that your Mac applications do…which is why it won’t be done that way.

But there’s a much more important potential “down,” that I mentioned in detail in my previous post on the subject: That the ability to run Windows software on your Mac will serve as a serious disincentive for developers to write new software on the Mac. This was my biggest fear before, and is echoed by others, for instance this comment on MacRumors PastedGraphic3-2006-06-24-19-18.png: “[Running Windows apps natively]= the end of native Mac development as we know it.”

I certainly understand why people might think so, but I no longer do. See, my Economics PastedGraphic14-2006-06-24-19-18.png classes have finally started to have some effect in my brain, and I think the process will work itself out quite differently from the “Those Macies can just fire up Windows if they need to use our software. Ha ha ha (evil laugh)” scenario. In fact, given the insights from my Economics classes, I suspect it might be just the opposite: The ability to seamlessly run Windows apps on the Mac will attract millions (yes, millions PastedGraphic14-2006-06-24-19-18.png) of new Mac users. This will increase the Mac’s market-, user-, and mind-share dramatically. These new converts from Windows will run their old Windows software, sure, but as time goes on, they will gradually migrate to Mac OS X applications (exactly as happened during the transition from OS 9 to OS X via Classic), because of the greater esthetic value, interoperability, compatibility and functionality of Mac software on the Mac platform vs. Windows software on the Mac platform. Besides (and this is really the killer point), it doesn’t matter if they migrate or not. Maybe they will all keep using the old software they’ve got until it’s so old that it’s useless. Still, when they go to buy new software, they will look for Mac software first. If they can’t find any at wherever they’re looking, sure, they’ll buy Windows software and use that. No big loss. The point is, though, that a developer that offers a Mac version of their software has an opportunity to make a sale that the developer of Windows-only software will miss out on. This will provide a powerful incentive for software developers to program for the Mac. No, this won’t cause every single Windows publisher to put out a Mac version. Not by a long shot. But, if Leopard does include native Windows support, and if that in fact causes a boom of Mac switcher sales, expect the amount of Mac software (and, possibly, even Mac-only software) to increase, not decrease.

Gavin Shearer of Microsoft has an interesting article PastedGraphic14-2006-06-24-19-18.png with a similar perspective on this issue.

Update: June 17, 2013

The screenshots turned out to be fake, and Darwine never quite materialized, but Wine PastedGraphic3-2006-06-24-19-18.png came to the Mac, and, more importantly, has been polished and published as Crossover PastedGraphic3-2006-06-24-19-18.png. However, sadly, the seamless experience I envisioned has not yet come to pass. Crossover is an application that runs (many) Windows programs. While those programs run in their own windows and not in some Windows environment, compatibility is spotty, and Windows programs don’t even have their own Dock icons (though that is changing). As it turned out, the virtual machines—Parallels and Fusion PastedGraphic3-2006-06-24-19-18.png—came to be the most seamless methods. While they are running a full copy of Windows in the background—and Crossover/Wine doesn’t—they can launch Windows apps in what Parallels calls “coherence mode” which works essentially the way Classic did: You don’t see Windows, only whatever program you’re running, with its own Dock icon and everything. The benefits of using Crossover (which is all I use to run Windows programs on my Mac) are twofold: It’s a lot cheaper ($40, with no need to buy a Windows license), and you’re not running Windows on your Mac, which greatly reduces the threat of viruses and is probably faster (I haven’t done any testing). But the price you pay is a lot of tweaking and troubleshooting to get the programs you want working properly—and sometimes they won’t work at all.

No comments: