As a UNIX administrator, I spend a lot of time with Linux and Solaris. As an IT staffer, I spend a significant amount of time working with Windows. As a Mac user, I spend a fair bit of time reading about the latest virus/spyware/trojan/patch batch, and being relieved that it's not my problem personally. Although I believe things are going to get tougher for Mac users in 2006, we still skate by most of the crud that makes life difficult for Windows users.
For several years now, I've been hearing a broad consensus that Linux is almost (but not yet) ready for use as a mainstream desktop operating system, because it's harder to use than MS Windows & MS Office, and much harder to install. I recently got a new PC, and was quite surprised by how much trouble installing Windows was. Even worse, the Windows installation required me to use the web several times, before Windows had Internet access. Had I not had other working computers and a broadband connection, I would have been stuck. On the other hand, installing Linux on the same machine was painless (as it normally is, in my experience). This made me take a hard look at the whole "Linux is not ready" idea. For several reasons, I no longer believe it.
Installing Windows: Not for Normal People -- When I mentioned how much trouble my Windows installation was to a co-worker, he pointed out that relatively few Windows users ever actually install it. Microsoft goes to great lengths (including legal tussles with various governments) to ensure that Windows is pre-installed on most PCs. Of all the times that Windows is installed after it is delivered to the customer, the bulk are by IT employees in corporations, who have a variety of sophisticated tools to manage the process. Of all the times Windows gets put onto a hard drive, most involve some sort of copying process from a "master image", and less than half involve actually running the Windows installer on the computer itself.
Actually installing one's own copy of Windows is not a normal user activity. Further, PC vendors tend to ship their own Software Restore CDs (as does Apple), customized to specific machine configurations, which also avoid the Windows Installer. They don't do this because they like developing software which they don't charge for, but instead to reduce support calls from their customers who need help installing Windows.
The New York Times recently reported that, rather than re-install Windows, a growing number of people instead choose to buy new PCs when their Windows systems become unstable (typically due to viruses and spyware). These people spend money on new PCs rather than reinstall Windows, which would remove any infections for free.
http://www.nytimes.com/2005/07/17/technology/17spy.html
Installing Linux: Just Part of the Game -- On the other hand, Linux is still in the early-adopter phase, which means Linux users tend to be the types of people who install Linux (and Windows) a lot, for themselves (on multiple computers), friends, and co-workers (perhaps as the aforementioned IT staff). This means the various Linux installers get a great deal more exposure (compared to number of hours spent just using Linux) than the Windows installers.
When I considered these facts, I realized that many people may casually assume Linux is harder to install and use than Windows without any experience installing either, and without any experience using Linux. Additionally, Microsoft has demonstrated quite effectively that people don't actually have to install their own operating systems. Computer vendors are happy to do this, and IT staff can handle the details as well.
Mac OS X falls between these two extremes. Most Mac users are satisfied with the OS as installed by Apple on their new Macs, but every time Apple releases a major system upgrade, the large number of people who immediately upgrade makes headlines. Apple's Mac OS X installers have several substantial advantages over Windows & Linux installers.
http://news.com.com/2102-1016_3-5690618.html?tag=st.util.print
First, the number of supported systems and components is much smaller than on the PC side. This remains true as Apple switches to Intel processors, because Apple only supports Mac OS X on Apple computers. Second, because Apple controls both hardware and software, drivers are basically a non-issue. Apple simply provides all drivers for all supported Apple systems, as of the Installer's ship date, on the disc. To capitalize on this, Apple also provides good generic drivers, for devices such as mice and hard drives.
Third, most Apple installations are single-partition and single-OS. Disk partitioning is not simple, and multi-booting (putting Linux and Windows on a single PC) can be extremely complicated. Partitioning is rarely an issue when installing Mac OS X. This is starting to with Apple's migration to Intel processors, because running Windows and mainstream versions of Linux is becoming feasible. Still, most Mac users won't have any need to know about partitioning.
To examine the Windows installation experience, here is a run-down of my recent experience installing both Windows and Linux on the same PC. Note that the Windows installation was worse than average, but it demonstrates many of the pitfalls clearly. This nightmare made me appreciate Red Hat's and Apple's installers. Considering this along with other operating system installations I've done, I see no advantage for Windows over Linux, and a marked disadvantage compared to Mac OS X.
In this recap, I'll skip various dead ends because they aren't especially interesting, but please keep in mind that this description is edited for brevity -- my actual experience was considerably worse.
I ordered a $300 PC, a 1.7GHz Pentium 4 based Compaq Evo 500 Small Form Factor desktop model, refurbished, from eCost, for $307 with shipping. I actually received a 1.8GHz Evo 510 SFF, without any explanation. It arrived at my home with 256mb RAM, 20gb HD, CD-ROM drive, and Windows installed (as specified on the site). The computer is small and quiet (although much bigger than a mini), and is now ns2.reppep.com (running Linux).
I don't much like PCs or Windows, but I do work with computers for a living. I maintain all my own systems; currently between work and home, that includes 5 Macs, 3.5 PCs, and a Sun (I got rid of the SGI). I run Windows XP on one for Windows-only applications, Red Hat Enterprise Linux 4 on another for testing, and RHEL4 on ns2 (replacing a Dell server with FreeBSD, where the hard disk died). The Dell was big & noisy enough that I decided to replace it rather than just the dead disk.
http://www.redhat.com/en_us/USA/rhel/
http://www.freebsd.org/
I sometimes find it valuable to have Windows available. A few years ago I put Windows on a FreeBSD system to watch a friend being interviewed on CNN-Asia and send him the Windows Media clip. Unfortunately, when I installed Windows, it overwrote the boot sector and made FreeBSD unbootable (Windows does this to other operating systems; Linux and FreeBSD do not). This problem is fixable, but means that standard operating procedure is to install Windows first, and any other operating systems afterwards.
The Compaq came with a Windows XP Pro Product Key (really a serial number, glued to the case), and one CD: "Compaq Operating System CD, Microsoft Windows XP Professional / Only for use with Compaq Restore CD". I put this in the PC, booted it up, and got a message telling me to boot from the Compaq Restore CD, which eCost did not provide. The Evo 510 is about 3 years old, so it wouldn't come with Service Pack 2 (SP2) for Windows XP. A new Windows XP system without SP2, connected directly the Internet, is likely to be broken into and under a criminal's control in less time than it takes to download all Microsoft's suggested patches.
http://www.usatoday.com/money/industries/technology/2004-11-29-honeypot_x.htm
Not realizing how much trouble installing Windows would be, I repartitioned the Compaq's hard drive to hold both Linux and Windows (destroying the installed copy of Windows in the process). If I had realized how precious a fully installed and configured installation of Windows is, I would have gotten a Partition Magic CD from work, and repartitioned the drive without destroying Windows. Alas, I did not know any better then.
http://www.partitionmagic.com/home_homeoffice/products/system_performance/pm80/
I had a generic Windows XP Pro (SP1) install CD from work. I put it in the PC, disconnected the Ethernet cable for security, and started the installer. Unfortunately, the installer got stuck at "installing drivers", and kept cycling the Windows advertising without advancing through the installation process. I shut down and gave up for the night. I tried again with an XP Pro SP2 CD from work. No joy, as we use the Volume installer for XP2, which wouldn't accept my (non-volume) Product Key.
I next brought home a normal (non-volume) XP install CD with SP2. This worked (finally!). Then Windows popped up a notification that it was "optimizing" my display, and everything got very very ugly. Despite the installer running and looking fine, Windows decided that I had an unsupported video card, and switched to basic VGA mode (640x480, with 16 colors). Note that although Windows defaults to this configuration if it can't recognize the video card, Windows is not designed to actually run this way. Configuration windows are too wide to fit on the screen, and the default color Windows theme looks bizarre with only 16 colors. I couldn't do much except install the right drivers. Even worse, the network interface was not recognized, so the PC couldn't connect to the Internet to get the drivers.
If this had been my only computer I would have been stuck, and had to either a) get a new Restore CD from HP (who bought Compaq) or eCost, or b) give up on Windows.
Fortunately I had a working Mac, so I went to www.hp.com and looked up "Evo 510 SFF". I found 10 different graphics downloads and 6 different network downloads! I read a bunch of documentation for the PC, none of which identified the components used. I was pretty frustrated at this point.
http://h18007.www1.hp.com/support/files/EvoDesktop/us/locate/64_4358.html
Linux to the rescue! I downloaded a Knoppix (Linux) CD-ROM image, and burned it on the Mac. I booted the PC from the Knoppix CD, and it immediately identified a common Intel 845G video chipset & Intel PRO/100+ Ethernet interface. I made a note, went to hp.com, downloaded Compaq's Windows XP drivers, and burned them onto a CD. I installed the drivers and rebooted. After reboot the display was much better, but it still didn't recognize the Ethernet card. On the Mac, I downloaded a different Compaq Ethernet driver for Intel chipsets. I installed the alternate driver, rebooted, and, cursed. The Ethernet controller was still unrecognized.
http://knopper.net/knoppix/index-en.html
I visited www.intel.com, got Intel's driver, and installed. This time the PC recognized the network card. Hooray!
Note that the PC's Ethernet cable was still disconnected at this point, because Windows PCs without the latest patches (even with SP2) are not safe on the Internet. Fully patched PCs aren't really safe on the Internet either, but they're less unsafe. I temporarily plugged the PC in behind my Linksys router, which provides some protection from Internet attackers, but let the PC reach Windows Update. Running Linux, Mac OS X, or FreeBSD on a system directly connected to the Internet isn't as much of a risk.
http://windowsupdate.microsoft.com/
Internet Explorer (IE) has a very complicated security preferences area (which strangely lacks decent cookie control), with multiple trust zones and a long checklist of what's allowed for sites in each zone. I went here in an effort to protect myself from malicious web sites. I started by locking everything down (choosing higher security levels than the defaults), but Windows Update didn't work. I got an error page telling me to trust 3 URLs for Windows Update, but after allowing those URLs I got another similar page with 3 different URLs. Complicating the process is the fact that IE applies some strange transformational rules (not normal regular expressions) to the URLs entered in the dialog box, so I got unexpected complaints about overlapping URLs.
Eventually, I got IE configured to WU could do its thing. Unfortunately, this required trusting the non-SSL WU sites, despite a MS warning in the dialog box not to do so. WU is not fully SSL-enabled, and MS obviously knows this is a bad thing, but still hasn't fixed it.
I ran WU and got a bunch of patches; installed; rebooted. Ran WU again, patched more, rebooted again. Ran WU again, and sighed in relief, as no more patches were needed. In fairness, Apple also sometimes requires a couple Software Update & reboot runs on brand-new installations of Mac OS X -- some patches must be installed before other patches are available via Software Update. Red Hat requires a reboot for kernel upgrades, but never two.
At this point (a week after starting) I had a working Windows XP Pro installation with SP2 and all patches, proper 1280x1024 resolution with thousands of colors, and a valid network connection. I moved the PC to its real network connection (outside the Linksys), on the big scary Internet.
A few weeks later, I got a customer satisfaction email from eCost, asking me to rate my experience. Surprisingly, they asked me not to send in a negative review, but instead to first give eCost a chance to fix anything I was dissatisfied, and provided a phone number. I called the number, and explained to the rep that I hadn't gotten an essential CD. He told me he'd speak to the product manager at eCost, they'd sort it out, and someone would call back that day. I never heard back, and decided not to waste any more time on eCost. I clicked a negative rating link in the email, and it didn't work either.
Vendor Dissatisfaction -- Here's a recap of what the various companies did wrong vs. right (more wrong than right, alas).
eCost: They didn't include the Compaq Restore CD (which probably would have avoided most of my problems), send me the CD when requested, or even call me back as promised. These are very serious. Less serious: they didn't ship what I ordered, but shipped a faster machine instead (a wash); and they sent a broken BizRate link.
Compaq (HP) screwed up in several different ways. They designed a computer for Windows XP (it says so on the case!), but used components which Windows XP doesn't recognize directly. Compaq/HP provides several different video driver downloads, but no guidance on which is appropriate (I had to use Knoppix to find out!). They provide several network drivers (again without help identifying which is needed), but the drivers don't work! Compaq/HP provides no Linux drivers for the Evo 510 at all. Searching through hp.com, the search engine suggests at least 3 different versions of the driver, two are obsolete. The built-in low-quality "beep" speaker apparently cannot be shut off, and doesn't mute with earphones plugged in (this may be standard, but it's still a pointless nuisance).
Microsoft: The latest Windows XP SP2 CD installer doesn't recognize my Intel 845G video controller or Intel PRO/100+ network interface -- both are very common components, and have been since long before Service Pack 2 was released. Running Windows XP in VGA mode (its default, per design) is remarkably unpleasant. Lack of network support is more serious, as it prevents the computer from downloading drivers -- this is a serious bootstrapping problem. I've since been told that Microsoft may recognize standard Intel 845G & PRO/100+ parts, but perhaps Compaq tweaked the device IDs in a way that Windows cannot recognize (but Knoppix can).
Intel had both drivers I needed. They weren't easy to find, but they were much quicker downloads than Compaq's, and they worked (unlike Compaq's)!
Note that I bought this primarily to run Linux, not Windows. I like FreeBSD, but don't have any particular need to use it any more, and I use Red Hat Enterprise Linux daily as part of my job.
PC are saddled with some ugly legacies. The BIOS standards don't
properly handle hard disks over 8gb, due to limitations in the
Cylinders/Heads/Sectors interface used between PC boot loaders
and the computer BIOS itself. Similarly, the boot loader itself
must start with a one-sector (512-byte) program, which loads the
second stage (which may then load a third stage), so the
operating system itself can be loaded. The simple rule of thumb
I learned several years for ago dual-boot Windows & Linux
is: put a Linux /boot
partition first on the disk,
then put the Windows C: drive, then put whatever else you like.
With newer PCs, this BIOS limitation has largely been worked
around, but it's part of the PC architecture, like the old 640k
memory maximum.
Now that I had the desired partitioning, and Windows installed on a
suitable C: partition, I was ready to install Linux. I had
copies of the 4 RHEL4 CDs, downloaded and burned. I booted from
CD 1, picked my partitions (set up easily before installing
Windows), and ran through the Windows installer. RHEL4
recognized & correctly auto-configured my video card &
display, as well as the Ethernet interface. I answered
configuration questions and fed it CDs. Less than an hour later,
installation was done. I then clicked on the
up2date
icon in the taskbar, entered our Red Hat
Network account info, and let up2date
download
& install patches. I then rebooted to use the new kernel
installed by up2date
, and configured the firewall
(in the file /etc/sysconfig/iptables
).
If I couldn't use a RHEL license from work, I might have stuck with FreeBSD or tried Ubuntu (completely free) or CentOS (a free Linux distribution derived from RHEL). I do, however, have access to educational licensing for RHEL. Our pricing is excellent -- a subscription to "RHEL Academic Server", which gets us RHEL Advanced Server without support, costs $50/year. This product competes with the much more expensive Windows 2003 Advanced Server. Red Hat Academic Desktop costs $25/year. I don't know what our Windows pricing is, but NYU quotes $300 for a Windows XP Pro license (probably with some support), and J&R quotes $90 for an academic license. Note that XP licenses are perpetual, while Red Hat subscriptions require annual renewal.
http://www.redhat.com/en_us/USA/rhel/details/academic/
http://www.ubuntulinux.org/
http://www.microsoft.com/Education/USAcademicPricing.mspx
If you were wondering why RHEL4 comes on 4 CDs, while Windows XP comes on 1, it's because RHEL4 includes a great many free applications, including OpenOffice.org (which also runs on Windows and Mac OS X). In contrast, Microsoft would prefer that every Windows user separately purchase and install Office and a variety of (separately sold and installed) MS products. In fairness, there's a significant amount of redundancy in RHEL, but it still includes much more capability than Windows.
Mac OS X obviously wouldn't run on this system, but if I hadn't wanted a PC, a PowerPC Mac mini with the bundled Tiger OS would make a dandy DNS server and be even smaller. An Intel-based mini would be somewhat more expensive, but smaller and quieter -- they weren't available when I purchased, though.
An important part of the Apple experience, however, is that Apple makes a point of including all relevant drivers with each OS upgrade, so a Mac OS X 10.4.5 DVD includes all the drivers for all supported systems shipping as of the date 10.4.5 was finalized. Apple thus avoid all the disconnects between limited Microsoft installers, integrated components such as video and network interfaces (from companies like Intel, Via, and nVidia), vendor documentation (provided by HP/Compaq, Dell, etc.), and vendor installers. This is managed by coupling the core hardware with the software and providing good generic drivers for the rest. This whole experience made me thank Apple again for taking care of drivers, so I don't have to.
Since the big announcement about switching to Intel chips, lots of people have wondered what this would mean for the Mac. In terms of the normal installation experience, not much. Apple still ships Mac OS X Installer DVDs with the new Intel-based iMacs, and will do the same with the MacBook Pros. The included iLife software is Universal Binary, and runs with full native performance on both PowerPC and Intel Macs. Apple still designs the base hardware, and provides a complete set of drivers in the installer.
http://www.apple.com/pr/library/2005/jun/06intel.html
In terms of drivers, supporting G4/G5/Intel Core systems is not that much different than supporting G3/G4/G5 systems, so Mac users will still be free of most of the driver headaches that can beset Windows and Linux users. On the other hand, there are devices without Mac drivers available. None of this is a real change.
The other question raised by Apple moving to Intel is: what about mix-and-match operating systems? A year ago, there were two main hardware platforms: Intel x86 architecture systems, which could run Windows, Linux, and the BSDs; and Mac systems, which could run Mac OS X (or Classic for some older gear), a few Linux distributions, and some BSDs.
With the Intel Macs, Apple is again a step ahead of the rest of the PC industry. PowerPC Macs used Open Firmware to manage booting, and mainstream PCs use the antiquated and troublesome BIOS (Basic Input/Output Subsystem). Apple's Intel Macs instead use EFI, Intel's Extensible Firmware Interface, designed to avoid most of the pitfalls of the BIOS.
http://www.intel.com/technology/efi/
In practical terms, this means that when Apple released the x86 iMacs, nothing but Mac OS X would run on them, because there was no compatible version of Windows, Linux, or BSD. As EFI support arrives for non-Apple operating systems, they should become able to run on Macs. For Windows, this will be with the release of Windows Vista; for Linux, it's likely to be sooner.
Once this occurs, Apple will be in the unique position of offering hardware which is more compatible than other PC vendors. Dells/HPs/Toshibas will run Windows, Linux, and/or FreeBSD. But Apples will run Windows, Linux, FreeBSD, and/or Mac OS X as well. Apple is actively working to prevent Mac OS X from booting on other vendors' hardware, primarily to avoid Mac sales being cannibalized by cheaper Dells, but also, no doubt, in anticipation of being the most-compatible PC vendor in the near future.
Now that Apple's on the same hardware platform as the rest of the industry, it becomes feasible to do apples-to-apples comparisons between Apple and non-Apple computers. People have been arguing about whether Macs are more expensive than PCs for years, but the value of a PowerPC vs. a Pentium processor was always a large intangible, fuzzing the comparison. The new intangible will be Mac OS X compatibility (once Apples and non-Apples can run mainstream Windows and Linux easily), but Apple is already doing well even without that edge.
http://www.macworld.com/news/2006/02/14/pricecomparison2/index.php?lsrc=mwrss
For the majority of people, who only use one operating system (including most Mac and Windows users today), installing Mac OS X remains dead simple. For cross-platform users, willing to face the complexity of partitioning and multi-booting, or to afford software such as VMware or Virtual PC (once those are available for Apple's Intel systems), Apple is quickly becoming an attractive option. And for long-time Apple users, Windows and Linux will be available without additional hardware. Good times.