I grumble a lot about computers. But sometimes, something causes me to look up from my keyboard grousing to see that some good really has come out of the past couple of decades.
I’ve been working with the beta for Windows Server 2003 R2, and I’m amused that every copy of R2 comes equipped with a Network File System (NFS) server and client. (In case you don’t know, NFS is to some in the UNIX world what Server Message Block—SMB—is to the Windows world: a file-sharing protocol that most folks wouldn’t use over the Internet but that’s alive and well within firewalls everywhere.) Who knows, perhaps we’ll soon see an NFS client on every Windows box. I can’t be the only person who’s noticed that Longhorn seems a little light on features that compel you say, “Gosh, I’ve just got to have that!”
Of course, on the UNIX side, I recall the nightmare of making a very old copy of Linux communicate with a Microsoft network. The phrase “interoperability with UNIX” always provoked a good belly laugh, particularly when Windows NT 3.5 servers blue-screened and lost a month’s worth of data. But in modern Linux and UNIX implementations, Samba makes such communications a snap. And the fact that the Apple Macintosh OS is actually a UNIX variant means that it, too, can communicate with Windows networks, if it wants to. (Thank goodness for that. Services for Macintosh—SFM—has been something of an irritant ever since NT 3.1.)
I remember a time before the dawn of the PC when several systems had floppy-disk drives, but none of them could read other vendors’ floppy disks. For that matter, it wasn’t long ago that one PC-compatible system’s boards couldn’t work in other PC-compatible system. One ISA-based system ran at a different clock speed than another, every system had a proprietary monster RAM expansion card, and no two serial cables needed exactly the same pin-outs. But now, I can buy a PCI expansion card, pop it in my circa-1996 Pentium II system running Windows 2000 Server, and it will work as well as it does in my AMD 64 system running Windows XP Professional 64-Bit Edition. Even Macs have PCI slots. Macs even have floppy-disk drives that can read PC floppy disks. (Conversely, Windows has never mastered the art of reading Mac floppy disks, but then the Mac folks have been big users of CD burners for longer than we have, and of course CDs are generally OS-blind.)
Of course, the nature of the technology business is that as soon as we solve a problem—say, add-on circuit-board compatibility between the PC and Mac worlds—we change the problem to be solved. What I mean is that, given the nature of modern laptops, I wonder how many more desktops and workstations we’ll see that actually have PCI slots. But laptop interop (say that out loud) isn’t a real problem between the Windows and Mac worlds either: Both systems have used PC Card slots for years and now use CardBus slots just as ubiquitously.
Even our computer-related hardware gadgets can talk. Apple cleared the way to fast, reliable, simple daisy-chained external devices with the introduction of FireWire, and Microsoft eventually caught up. At least, I think it did. I don’t recall buying a desktop or a laptop without FireWire in a few years. And the Windows world returned the favor with USB 2.0. All of which means that you can use one cable to sync your Palm device with either your Mac or your Windows system. Or even your Linux system—Kernel 2.4 fixed just about all of Linux’s USB-related heartburn.
Of course, there’s still a lack of communication in the PC. I'd like to see all the really intelligent people from the various tech sectors got together and agree on a smart format for storage devices and on a set of graphics primitives—Avalon's graphics device interface (GDI) versus Mac versus X. It would be nice if those people could adopt some kind of similarity in driver structure, even if they can’t ever really be identical. And perhaps we could all settle on a standard definition of “gigahertz” when speaking about CPU speeds. But I suppose that's a discussion for another time.