News
Features
Guest Essay
Technicalia
Security
Community
Commentary
Home
ymmv

The View from the Desktop

Eyes on the wrong prize

by Dennis E. Powell

There's more and more talk of what a grand and glorious thing it would be if only all Windows applications would just run perfectly under Linux.

We have the Lindows distribution (which one expects will go glug-glug-glugging beneath the waves, now that Code Weavers has in effect given it an indows-ectomy; Code Weavers apparently figured out that they could sell their little Windows translation themselves for more than they were getting from Lindows and broke with the distribution -- which merely accelerates what seemed to me would be a certain failure anyway). We have the Code Weavers and their CrossOver product, which for $54.95 will let you run Microsoft Office under Linux. And we have WINE, the best damned Solitaire launcher in the world.

We used to have Corel Linux and Corel WordPerfect Office 2000. We don't anymore because they were miserable failures, and the failure is due to more than the megalomania of Dr. Michael Cowpland. Corel Linux was an answer to the unasked question, while Office 2000 gave users willing to risk a substantial amount of money, by Linux standards, the opportunity to learn just how unrewarding an experience even a custom WINE-based application can be. WordPerfect was Linux native, but the rest or most of it perched atop a trick implementation of WINE. (Hancom, the Korean company, got clue-enabled and realized that nobody would buy their office suite as long as any of its apps were half-bright Windows ports, as their word processor was. In their upcoming version, presuming that it oneday will appear, all the apps are native to Linux from the bottom up.) IBM is shipping some applications, notably their Websphere Homepage Builder, that run on yet another mutated WINE. What can be said of them is that they are surprisingly fast and fairly reliable, but the overall experience is that of a movie preview -- you can tell that if a real port were made, it would be really good.

The whole WINE notion was at best a stopgap -- a way to run some games and productivity applications until real Linux replacements could be constructed. In many ways, the app tap has flowed more freely than has the WINE: we now have a wide selection of applications, while WINE still ferments.

But all of this is entirely beside the point. The very last thing that those who champion Linux should favor is an ability to run Windows applications. People who are desperate to run Windows applications run Windows.

Ask anyone involved with OS/2. That superior operating system had the ability to run then-current 16-bit Windows applications. The result was that developers who might otherwise have developed for OS/2 realized that they could kill all the birds with one pebble, by writing Windows apps. OS/2 was wounded as a result. What's more, a terrible message was delivered -- that IBM lacked confidence in their operating system -- which further discouraged users from investing in such OS/2-native applications as were available.

In one way, the mere mention of ways of running Windows applications under Linux is an insult to the multitude of talented developers, both in free and open source and in commercial binary projects, who are writing real, native applications. But beyond that, pursuing the unquestionably foolish goal of running Windows binaries, and of being at the mercy of whatever new specifications Microsoft dictates, betrays a complete lack of understanding of interoperability.

Ximian gets it. They have the money and programming talent to get Windows apps to run under GNOME and probably even to look decent (something which has thusfar escaped the translation layer crowd). But they realized the real goal, which is interoperability. We do need to get along with a largely Windows world. We need to talk to Windows machines. We need to share networks that include Linux on the desktop as well as Windows there. Ximian did it corrrectly: they wrote Connector, which lets their Evolution product work as a Microsoft Exchange client.

Look: When you get a letter in the mail, it's likely that you cannot tell what application was used to write it, and it's all but certain you don't care. When you get email, unless it contains some nutball Outlook macrovirus, you probably don't care the mail program that produced it. The emacs and vi wars are interesting, to their participants, but no one should lose sight of the fact that you cannot look at a text file and determine which, if either, produced it. That is the level at which interoperability has meaning -- when it doesn't matter what application or even what operating system produced the work. There are reasons for choosing one operating system over another. File formats oughtn't be one of them; nor are they an excuse for constructing some way of shoehorning applications for Windows onto Linux.

Consider the amount of effort that has been put into prodding Windows apps into making an appearance on the Linux desktop. Now consider how much better things would be, and how much if not all of the desire to bring winapps over would be obviated if the same amount of effort had been put into developing solid equivalent Linux-native applications and the filters that let them talk to other apps everywhere else.

It's Ximian's model that we should be emulating. Chasing the Windows API is always going to be a losing battle for all the reasons listed above, and one more: if we're following, we cannot hope to lead.

Discuss this article

Posted 17 April 2002