After putting down the Mac last year because of a failed attempt to try the switch (incompatibility with my company's virtual private network was the culprit), I'm giving it another try and can report that -- thanks to the recent Panther OS (I was on Jaguar before) -- I've been nearly Windows-free for long enough to say the switch is technically possible for most people (more on that later).
For any technology to finish off the Mac -- and by the Mac, I mean OS X -- it will have to wipe out demand for the desktop version of OS X. Apple has some very cool OS X-based servers, but they haven't been key to Apple's survival. Apple's desktop devotees have played a critical role in helping the company achieve some success with a blend of desktop and notebook systems and entertainment solutions. Judging by the toll that Linux has taken on Windows on the server side, it only stands to reason that it could do similar damage to other desktop encampments.
However, rattling the foundations of desktop Windows and Mac OS X (aka: Unix) will prove far more challenging for Linux than undermining the server versions of the two operating systems. Although it plays a role, ease-of-everything (use, software installation, management, etc.) is hardly the factor in a server operating system's success that it is for desktop operating systems. In fact, the many hardcore server administrators would just as soon do away with a lot of the ease-of-anything frills in return for a mean, lean, simple, command-prompt driven Web, database, email, directory or database application server. Compared to Windows, the way Linux can be deconstructed and reconstructed in a way that allows server administrators to achieve the perfect balance between bloat and function for whatever itch needs scratching is a winner. Compared to Unix, in which such a balance can also be struck, cost has been Linux's primary driver.
My own "datacentre" has two Linux-based servers running in it -- one as a Web server, and the other as a database server. Both are old Pentium IIs with a little extra memory. In the name of performance and simplicity, I haven't taken the time to strip them of their unnecessary fat (I'm not an expert at this) such as unnecessary daemons and other processes that load at boot time. I know that they could lose about 70 percent of their "weight." Since these are machines that were long ago donated to the recycling heap, the cost of this part of my datacentre has been near zero (not counting my time).
In the desktop world, end-users, small businesses, and even large corporations are willing to spend extra for ease-of-everything and take the requisite bloat (the GUI, printer and file sharing utilities, scripting hosts, power management, auto-configuring wireless networks, multimedia facilities, etc.) that comes along with it. But not too much extra. As evidenced by Apple's lack of traction on the desktop -- where it leads on ease of a lot of things (but not everything) -- the majority of users are satisfied with less than OS X.
Today, even the most reputable and recommended distributions of desktop Linux, such as Gentoo and Xandros, are not the no-brainers that OS X and Windows -- in that order -- are. However, it's only a matter of time before desktop Linux follows precisely the same path as server Linux did when it worked its way from the pockets of early adopters and risk takers into gaining the widespread affection of server administrators.
The target for desktop Linux is simple: OS X. All desktop Linux must do is aspire to be what OS X is. If it can do that, it will not only upset the "Applecart", it will also give desktop Windows a serious run as well. The number one issue working against OS X on the desktop today is cost. We're willing pay extra for an easy to use, shrink-wrapped bundle of hardware and software, but OS X in combination with Apple's hardware exceeds the budget for a majority of users. Many today would argue that it's not cost, but rather that they're walled into Windows because of compatibility issues. Indeed, for some, that walled garden is difficult to extract themselves from. For example, I'm still trying to figure out what I'm going to do about some custom developed Visual Basic applications that I left behind in my move to a Mac.
But, the majority of users -- people who use their PCs to browse the Web, do e-mail, and run Office -- are not nearly as walled in as they think they are. For example, prior to my attempt to run solely on OS X, consider my environment: Windows XP, Outlook, Exchange Server, Internet Explorer, a virtual private network based on Microsoft's VPN technology (PPTP), Microsoft Office, and one Visual Basic application. You can't get much more "Microsoft" than this.
Since I'm dead without a connection to our corporate network, OS X 10.3's (Panther) provision of a solid PPTP client matches Windows XP provision of the same. Regarding access to my Exchange Server, OS X's built-in mail client is capable of natively accessing Exchange Server. It works fine. I tried it. Unfortunately, iCal, OS X's built-in calendaring program, won't connect to Exchange Server for calendaring. But, all is not lost. You can spend Ã‚Â£400 to have the benefits of Microsoft Office 2003 Professional for Windows that includes the Outlook mail and calendaring client. With OS X, you can spend the same Ã‚Â£400 for Office 2004 for OS X that includes the Exchange-compatible Entourage mail and calendaring client (which, with its project-oriented functionality, some might consider to be superior to Outlook).
What about Internet Explorer? As it turns out, Safari, Apple's built-in Web browser, doesn't work with the open source-based WordPress blog authoring system that we use as well as IE does. I had similar problems with Opera. WordPress has been my only problem so far, and to overcome the problem I will download Mozilla.org's Firefox because I've been told by almost everybody that it solves the problem. Other than that, Safari has been great. This leaves me with one outstanding problem -- my Visual Basic application that relies on Outlook's programmable classes. But this isn't a problem that most people have and I'm now looking into redoing the application in Java. OS X is not only a great system for running a Java virtual machine, it's supposedly a great system for developing Java applications (more on that in another column).
What else about OS X is a factor in my decision? Aside from the 100 percent freely included XCode integrated development environment (IDE), I'm loving at least two other built-in features to OS X.
First is the built-in support for the Common Unix Printing System (CUPS). Right now, I use one of my Linux boxes as a print server and printing to it from Windows has not been without its problems. Linux includes a technology called SAMBA for Windows-based file and printer sharing, but it's tricky to configure and use. With OS X's support for CUPS, sharing the Linux printer was a no-brainer. This made me especially happy since the printer is an HP Deskjet 5550 photo printer and iPhoto (OS X's built-in photo editing and management application) allows me to generate some nice output without running out and buying PhotoShop.
Second is OS X's built in support for X Windows. There are some GUI-based apps such as Ethereal that I like to run on my Linux boxes. Accessing them remotely with Windows was impossible without buying an expensive X Server. Thanks to OS X's built-in X Server that problem goes away.
Apart from my VB application, one question remains. Now that I've switched, would I recommend that others do it? For me, and I suspect others, the answer comes down to a question of acquisition cost and hardware. I say "acquisition cost" because I have heard that over the long run Macs -- with zero-configuration focused technologies like Rendezvous -- have proven themselves to have a lower total cost of ownership than Windows-based systems. I say this with the major caveat that I haven't seen any recently published studies that take into account recent improvements in the manageability of both OS X and Windows. Many would argue that just the security situation alone is enough to paint OS X in positive TCO light (rest assured that if OS X were as big a target as Windows, it would have its share of problems). Assuming that each has their strengths and weaknesses from a TCO perspective and that their TCO nets out to be the same (a conservative assumption in an attempt at an apples-to-apples comparison), we have to look at the hardware.
Today, you can go to an Apple store (on-line or soon to be in a town near you), and if you need a mobile system, you have a choice among eight units from Apple. That by itself is a problem. Hundreds of Windows notebooks come in all sizes and shapes, with all sorts of keyboards and pointing devices, and with vary degrees of performance and durability. I'm getting used to the touchpad on the PowerBook, but I sorely miss my IBM ThinkPad's TrackPoint pointing stick because my fingers don't have to travel as much from the "home keys" (over which touch-typists' fingers like to hover) to change the mouse pointer's position. Though performance is important to me, I'm not sure that I need everything the G4's processor has to offer. If, for example, Apple had several tiers of performance from which to choose the way Intel-based vendors like IBM, HP, and Dell do, that might be nice. It doesn't and I understand the reasons why.
I'm working with the 12-inch PowerBook G4 and though it's lighter than it's 15 and 17-inch siblings, the display is too small for looking at large documents or wanting to scan lots of email messages. At bare minimum, I'd recommend a 14-inch display (standard on the Ã‚Â£899 iBook) or, even better, a 15-inch display, (standard on the Ã‚Â£1,399 PowerBook).
I could go on, but you get the picture. The premium cost of Apple hardware hurts and OS X only runs (practically) on Apple hardware. Let me remind you that none of this is really about whether you should switch to OS X or not. It's about what happens when desktop Linux reaches that point where it provides an experience that meets or beats the one that that sets the standard for *ix-based desktop operating systems: OS X. When it does -- and I don't doubt that it will -- Apple will be in a real pickle because of the hardware 'problem'. Users will have significantly more hardware options for running desktop Linux and the likelihood that they'll find something to meet their needs in terms of cost and form factor will be excellent. There will no doubt be companies that make systems that look every bit and run every bit like a PowerBook (or whatever Apple is selling at the time). They just won't be PowerBooks and will cost significantly less.
Doubters will point to Apple's time-tested ability to innovate in a way that has kept its operating system and user interface ahead of Windows since the dawn of PC-time. But to not have faith in Microsoft is one thing. To not have faith in the highly motivated open-source movement and all those behind it (Red Hat, SuSE, Sun, etc.) to bring desktop Linux up to speed is misguided. They're the underdog. Never underestimate the underdog.
The question then becomes, what will happen when that day arrives? Will Apple have built such a large entertainment business that it might be willing to let the systems business die on the vine? Or, will it finally cough up an Intel-based version of OS X? Or, as I fantasised in a recent column, is there some crazy mixed up world where Apple ends up merging with another Unix server specialist like Sun with the end result being a magical blend of GNU/Linux, OS X, and Solaris that's compatible with AMD and Intel, that's light years ahead of any other desktop *ix on the market, that provides a killer platform for running and developing Java, and that affords the Apple technology a re-entrance into the corporate market through Sun's customer base. Even I have to admit that the idea is crazy. But, in response to my column, my email suggests that there are people who will get in whatever line they have to in order to get access to such a technology.
Stranger things have happened.