January 1999 Column

[ Site Index] [ Linux Index] [ Feedback ]

"UNIX is dead; but most people in the business haven't noticed because the corpse hasn't begun to smell bad yet." That's what an academic computer scientist of my acquaintance said back in, oh, 1990 or thereabouts -- and he was quite right, within the field of computer science; the action had moved into commercial development. More recently, people who should know better have been saying the same thing, and advising everyone to switch to Windows NT. However, the doomsayers are all wrong. Before UNIX died someone from Finland swiped a tissue culture, and now its bastard clone offspring Linux is showing astonishing signs of vitality.

It's been a busy month; so busy my head's spinning. The big news is, of course, massive commercial buy-in; people who were pretending to ignore Linux back in June are now bowing down and praising it as the next thing since sliced bread -- probably because they've got a chance to grab some of that bread for themselves, while Microsoft is still in denial. Choir master to the procession of acolytes is a three- way toss-up: Marc Andreesen of Netscape (who started the commercial riot), Larry Ellison of Oracle, and Dr Michael Cowpland of Corel. All three companies have done violent flip-flops. Netscape are giving away the source code of Navigator, their most visible (but least profitable) product; Oracle are porting, er, Oracle: and Corel has ... well, "got religion" sort of sums it up. They're branching out into hardware, making ARM-based network computers that run Linux (the Netwinder machines), porting their entire software range (and giving away Word Perfect 8.0 free for non-commercial use), and in a Q&A session at the Atlanta Linux Showcase Cowpland said that Corel was actively going to support the WINE project.

Most of these commercial offerings will elicit a tired "so what?" from the open source people. Firstly they're, well, commercial, which in the Linux world is a bit like being a self-proclaimed member of the Communist party in 50's America. Secondly, there are open source alternatives to all of them that work in a limited manner right now, and will be serious competitors within a few months; virtually all open source projects are currently developing explosively as the avalanche gains momentum and fresh programmers join the development groups. Why use Oracle when there's GNU SQL Server or PostGreSQL? Who wants StarOffice or Word Perfect Office when there's KOffice, SIAG Office, and the GNOME office project? And so on: why accept the poisoned bait of commercial software when the free alternatives are available? I'll go into this question later -- it's an important one that's really divided the Linux community today, evokes strong emotional responses, and is only going to get worse over the next year. But first, the WINE business -- the first sign of commercial intervention which has the potential to be revolutionary.

WINE, if you haven't heard of it, is what Linus Torvalds has described as the killer application for Linux. WINE stands for Wine Is Not an Emulator; it's a collection of shared libraries (UNIX-speak for DLL's) that translate the Windows API's into system calls to Linux and the X windowing system so that Windows applications can run on Linux as fast (or in some cases faster) than they do on Microsoft's own OS. WINE has been around for a couple of years now, but hasn't reached even alpha release quality, for two reasons: the Windows APIs are a moving target, and Microsoft helpfully don't document all their internal system calls, forcing the WINE team to reverse engineer everything from scratch. However, WINE already runs most Windows 3.1 software and some Windows 95 applications; allegedly it's very close to a breakthrough, at which point enough of the Win32 interface will be in place to let something like 99.8% of Windows applications run like a dream.

After Linux itself, WINE is the open source project most likely to give Bill Gates nightmares. His worst-case scenario runs like this:

Pointy-Haired Boss:
[ to Bastard Operator From Hell ]: Hey, what's this loo-nix thing I keep reading about in TIME magazine? Is it some kind of program for Windows?
You don't want to know about it.
Why not?
I could tell you, but then I'd have to kill you.
[ smiling ingratiatingly ] So tell me.
[ sighs ] It's an operating system.
Oh, you mean like Windows NT 5.0? Is that all?
[ through gritted teeth ] It's a lot faster and more reliable than NT 5.0. It doesn't crash. It's the reason your netware and web and ftp and mail servers don't crash.
Must be expensive then.
Nope, it's free.
So who do we sue when it goes wrong?
You don't -- (a) it doesn't go wrong, and (b), you pay me to fix it.
But it doesn't run Microsoft Money.
Put WINE on it and it does.
But we've just spent five hundred pounds upgrading every workstation in the company to run Windows NT 5.0! Now you tell me there's a free alternative that runs all our software! What am I going to do?
[ pulls out Uzi nine millimetre ]: Die!

Cowpland thinks WINE is the argument clincher for Linux. He's not alone. If it works, it removes at a stroke the cost of throwing away all those existing Windows application licenses and buying (or learning) new ones. Which is why Corel desperately need it; seeing their share of the Windows office market shrinking inexorably, they're trying to switch platforms to the only non-Microsoft OS that currently has a growing market share. But unless they can find some way of getting the great unwashed masses to join them, they're out on a limb. Corel is vulnerable because their profits rely on selling into a mass-market client platform. Linux is currently a hobbyist and server niche market; it simply can't provide the volume sales necessary to sustain an application vendor like Corel.

But if Corel can get WINE firing on all four cylinders, they could point Linux at the mass market and make an end-run around Windows 98 before Microsoft wakes up to what's happening. Microsoft's current propaganda position on Linux is to write it off as either a hobbyist thing, or unreliable, or a niche-market alternative for servers. But a lot of corporate customers are thoroughly fed up with Microsoft right now; the shift from per-session to per-user licensing has hiked their fees by up to 400%, NT 5.0 is behind schedule, NT 4.0 is up and down faster than you can say Monica Lewinsky, and if someone offered them an alternative (for FREE!) which runs Windows NT and Windows 95 applications (and is FREE!) and doesn't crash (and is FREE!), they might just be tempted to ditch Windows altogether and switch all their workstations to Linux. In which case, Microsoft stock wouldn't be worth the paper it's written on.

Desktop Wars

Meanwhile, in a distant galaxy far, far away ...

One of the perennial complaints about UNIX in general -- and Linux is, for these purposes, a flavour of UNIX -- is the lack of a decent GUI to match, say, that of the Mac or, failing that, Windows. The X window system" has been around for ages, but it isn't a GUI; it's a system for putting pixels on screens, and bears about the same relationship to a graphical user interface that an MFI flat-pack with instructions translated from the original Japanese by a dyslexic chimpanzee bears to a bookcase. Some of us eventually end up with something rickety and brittle that works, but that's no way to impress the Joneses.

A bit more than a year ago, some enterprising German hackers finally got sick of the situation. With stolid efficiency they decided they were going to use the Qt widget set (a set of tools for writing graphical applications under Windows or X) and build a GUI. This they proceeded to do, and the KDE system -- short for K Desktop Environment -- is most of the way towards giving Linux something that looks not entirely unlike a clone of Windows 98. KDE is great if you want to plonk a Linux box on your not-so-smart cousin's spare table in order to wean them off Windows; add an office package like StarOffice or Word Perfect or ApplixWare and, well, they won't know what they're missing until they try to load Tomb Raider. In fact, KDE development is accelerating; KDE 1.0 was released in June, and KDE 1.1 is due Real Soon Now. The next stage is KDE -- The Next Generation. We're promised all sorts of things with KDE-NG; most importantly, it's going to be based on an ORB.

ORBs are Object Resource Brokers. Like COM or OLE on Windows, or OpenDoc on the Mac (scratch that last one), they let you build applications out of components that talk to each other. In the case of UNIX ORBs, the components don't even need to exist on the same computer: as with all things UNIX, they take the internet for granted and run with it. KOffice, the KDE MS-Office killer (hah!) is being built around an ORB; if it shows the same phenomenal rate of improvement as KDE itself, it really will be a powerful contender in about six months time. (Right now, you probably don't want to touch it unless you prefer debugging to doing the annual accounts. Hmm, where did I put those sources?)

However, the remorseless march of KDE towards A Better, Cuter Linux has generated one of the biggest on-going flame-wars on the net. Indeed, it has stimulated a nearly-identical effort to construct a free desktop for Linux -- one which is building pretty much the same programs, and the same monumental complexity: GNOME. The whole GNOME/KDE war seems stupid and wasteful, as the sets of applications are both intended to do exactly the same thing -- it's a classic case of duplicated effort, and the effort is on the order of millions of lines of source code, hundreds of programmer-years. Why is this happening?

It all goes back to the idea, enunciated by Richard Stallman around 1980, that software wants to be free.

Linux is free software. That's free as in speech, not free as in lunch. You can do anything you like with it, including charging an arm and a leg for it, as long as you don't stop people giving the source code away. Do that, and you're violating the license terms -- and if you try to close off access to Linux, a whole bunch of linux vendors may well jump on you with a class action lawsuit because they don't want anyone stealing their toy.

KDE is free. It's licensed using the GNU Public License, a quirky legal document which sets out the legal basis of what the Free Software Foundation call copyleft -- the principle that the right to redistribute (copy) the software much not be infringed.

But KDE relies on a low-level graphics library called Qt. And Qt is not free, or so some people argue. Qt is written by a small Norwegian Company called Troll Tech. The Trolls sell commercial support for Qt; in particular, if you write a commercial application using Qt and sell it for money, you owe them a one-time fee for using their development tools commercially. For non-commercial use, Qt is free; the only caveat is that the Troll Tech team are the only people allowed to roll changes into their library.

Now, this caused one hell of a commotion when the KDE effort got going. Qt is 'free enough' for the KDE developers; anyone can use it for free, and the only people who owe any money are commercial developers who write and then sell programs that use Qt. Even then, the programs they sell can use it for free -- it's just the act of developing a commercial package that bears a cost.

But. Linux is Free. What happens, the free software fundamentalists asked, if Troll Tech changed their minds? Or were bought out by J. Random Multinational, who decided to milk Qt as a cash cow? Or went bust?

To their credit, many of those people who harboured such misgivings put their muscle where their mouths were and settled down to write GNOME, a totally 100% guaranteed free GUI based on the GNU GTk widget set (which wasn't really mature enough to form the basis of a GUI environment when the KDE effort started).

GNOME is still some way begind KDE; the effort started a year later, and it's still barely alpha-grade software. However, it's got a generally better technological underpinning; while KDE's goal was to get something out the door fast, GNOME's goal is to get something better out the door, and this shows.

For their part, some members of the KDE team began writing something called Harmony -- a GPL'd, free, clone of Qt. And in conjunction with Troll Tech, members of the KDE team set up the Free Qt Foundation. FQF is simply an escrow agreement; if Troll Tech goes bust, or stops maintaining Free Qt, or changes the license terms, the last free release of Qt goes into the public domain under a GPL license pure enough to satisfy anyone.

Meanwhile, both development teams are working towards convergence. GNOME and KDE applications should soon be drag and drop compatible; eventually the two efforts will probably merge into one. The best-of-breed competition (as the commercial world would put it) is really pushing things ahead. For years, free software seemed dismally short on the cute graphical applications that characterised the Windows world. Now, we seem to see a new spreadsheet coming out every week. The GIMP image manipulation program is like a sort of Linux version of Photoshop on steroids; the GYVE project aims at producing a comparable Adobe Illustrator basher. KOffice is suddenly turning from a curious collection of nuts and bolts into a cutting-edge object-component-based integrated office suite -- there's a good reason those commercial vendors are giving their offerings away free for non-commercial use!

But there's a down side to all this.

Linux tends to attract passionate supporters. It reminds me of the early days of the personal computing revolution, when everything was fresh and vivid and people could get excited about small humming beige boxes because they were new and different. But along with the passion, it attracts hatred. A large and vocal minority of Linuxers hate Microsoft. This isn't a word I use likely; it goes far beyond disliking that company and refusing to use their products because they're overmarketed expensive rubbish. Reading some of the Linux newsgroups you'd think that Bill Gates advocated eating babies, and that users of Microsoft systems were traitors to the human species.

These somewhat over-excited users -- "the taliban" as a developer of my acquaintance calls them -- tend to be open source fundamentalists. Not only is the free software thing innately superior; it is the one true way of virtue, and anyone who deviates from it by so much as a micron is to be publicly reviled. And they're not afraid of throwing verbal stones at anyone who doesn't meet their own self-imposed standards of purity.

Well, I don't like that. I'm a pragmatist at heart. Yes, free access to source code is important. It's probably the most revolutionary thing to hit the software business since, oh, 1977 or thereabouts. But there's no point getting over-excited about it; and condemning people for not following the one true path will do more to put people off using open source software than it will help by spreading the word.

In this column, I will try to treat all developments impartially. I'm going to talk about commercial developments and free software projects; if it runs on Linux, it belongs in this column, regardless of the licensing policy (although I will always mention it). If Microsoft ports Flight Simulator to run under Linux, you'll read about it here -- even though I have my suspicions about Chairman Bill's larder. It's up to you, dear reader, to decide whether you want to use Linux to run Microsoft Office under WINE on KDE, or to stick to the heady purity of a Debian/GNU distribution and GNOME utilities. The whole Linux phenomenon is about freedom of choice, and it's none of my business to tell you what software you may or may not run.

Other Developments

In the development tree, Linux 1.2.126 (gasp!) is out". According to Linus, releases of 2.1.x from now on should be considered pre-releases of 2.2, the Next Big Thing. 2.2 itself is officially due out sometime before Hogmanay, and is loaded with billions of new features; expect the next or next-but-one column to be full of 'em.

Button-down shrink-wraps: Compaq, Dell, Gateway 2000 begin muttering about Linux. Compaq's just going to make sure Linux runs on all their hardware. Dell said that they might ship Linux boxes if there's market demand for them. Gateway 2000 said they've been evaluating Linux as an OS for the past six months and may ship Linux systems next year. Eric Raymond, indefatigable Linux spokesperson, says he expects the six biggest box-shifters to be selling PC's pre-installed with Linux by the second quarter. HP also talked about Linux support, but seem more interested in using it on their embedded systems -- possibly because they don't want it to cannibalise their high-end HP-UX UNIX market. IBM are, of course, silent -- but rumour has it that a port of the high-end DB2 database to Linux is coming Real Soon Now (making them the last-but-Microsoft in the queue, as Ingres, Oracle, and Informix are all there already).

New Office Packages: Applix have noticed their office package sales on Linux taking off and appear to have pulled their licensing deal from Red Hat, preferring to manage and sell the Linux port themselves. There's also a port of ApplixWare from German distributor SuSE, bundled as Linux Office '99 with a copy of SuSE Linux 5.3 (a cute, KDE-based distribution that looks very promising). Meanwhile, StarOffice's promised 5.0 release for Linux has been delayed; expected in mid-October, it wasn't available at deadline time. StarOffice is a real Microsoft Office clone; 5.0 is claimed to support Java applets, VBA, Office 97 documents, and more features than you can wave a barge-pole at. (If StarOffice 4.0p3 is anything to go by, it'll be a well-integrated, visually attractive and incredibly memory-hungry suite.) StarOffice appears to be free for non-commercial use; this gives it an edge over ApplixWare. But not enough of an edge; Word Perfect 8.0 personal edition is due out in a couple of weeks, and will also be free for noncommercial use. (What next? Are they going to start paying us to use their software?)

It's a webbed world: Netscape Navigator 4.5 is out on Linux. (Netscape made Linux one of their principle development platforms a couple of months ago, so this is no surprise.) More interestingly, the Netscape web servers should all be showing up over the next month or two. Meanwhile, there's a step forward for Java support on Linux. Sun tends to charge six-figure sums to vendors who want official Java certification and support; they seem to have decided to give this level of support to Linux for free, so that from Java 1.2 onwards Linux Java support will be running on a par with the other market leaders.

Desktops to go: KDE 1.1 is due to roll in mid-November. Features include general bugfixes and improvements and, maybe, a first public outing for the KOffice office application suite. Meanwhile, GNOME 0.3, the "Bouncing Bonobo" beta release, is out.

Developers only: Metrowerks, producers of the premiere Macintosh development environment Codewarrior, have announced that there'll be full Linux support in Codewarrior Professional 5.0, due next year. On the web side, Allaire are porting Cold Fusion to Linux; watch this space.

[ Site Index] [ Linux Index] [ Feedback ]