overview

Advanced

Open Source on the Business Desktop

Posted by archive 
<HTML>The People of TrustCommerce: Adam Wiggins




Open Source on the Business Desktop
A Real-World Analysis

by Adam Wiggins
Chief Software Architect, TrustCommerce

January 23, 2002


Introduction

Fifteen years ago, the term "paperless office" was bandied about in the business world. A new enabling technology (computers) would allow businesses to rid themselves of an older, less functional technology (paper) which had become more trouble than it was worth. Today, the vast majority of document exchange is electronic; the paperless office has (more or less) been achieved.

These days, we now hear the term "Microsoft-free office" spoken in much the same tone of voice. A new enabling technology (Open Source/Free Software) will allow businesses to rid themselves of an older, less functional technology (proprietary software) which has become more trouble than it is worth.

Numerous articles have appeared in the media and online on the subject, but the vast majority seem to be speculation: a lone writer or SOHO worker who declares that such a thing is probably possible, in theory. (Obviously some examples such as the City of Largo are an exception.) They then go on to list the various Open Source/Free Software desktop apps available, and leave the reader wondering if one can really do business with entirely Free/Open Source software. (With apologies to GNU and RMS, I am going to use the term "open source" to mean Open Source and Free Software collectively for the rest of this essay.)
<p>
My employer, TrustCommerce, has been making a slow transition to open source desktops over the past year. Today we have removed almost all proprietary software from the company desktops, and we're doing business just as well (and arguably better) than before. Surprisingly, the majority of our customers are not members of the open source community (though a good portion of them are). In fact, most of our customers have no idea what the the terms "Open Source" or "proprietary" mean, and would think we were crazy if we took Richard Stallman's suggestion and rejected the many .doc and .xls files that are sent to us each day.

This essay will be in two major sections: first, the story itself, to share the ups and downs of this transition. And second, the specific applications and technologies that we have evaluated for doing business in a Microsoft-dominated world.

Part I - The Story

Background

Server-side, TrustCommerce relies exclusively on open source. It wasn't always that way; there was a time were a small percentage of our server tasks were done with proprietary software. When I signed on with the company, they were in the process of shifting from Informix (which was not scaling to match the company's rapidly growing database size) to PostgreSQL (which we still use today, and has scaled marvelously). In fact, one of my first tasks with the company was to write a replacement for a piece of proprietary software that ran only on NT. With my work in place and tested as stable on our other (Linux) servers, we removed our last two NT servers from colocation and happily wiped the drives.

This part isn't too terribly revolutionary. Although the company was still young at the time, it was owned and managed by industry veterans who knew well that the value proposition of free software, server-side, is unmatched. Open source on the desktop, however, is a much less explored territory.

Engineers (including myself) were allowed to use whatever we chose on our workstations. Most used some version of Mandrake or Red Hat. Everyone else used some version or other of Windows. Most engineers didn't have to deal much with the outside world other than email. My job was a little different; it includes quite a bit of "interfacing" between the various non-tech departments (sales, marketing, customer service, etc) and in fact I was often dealing with customers or our business' partners directly. This put me face-to-face with the reality of American business: everything is in .doc, .xls, and .ppt format. Earlier in my career, I had never paid much attention to office applications on Linux. But with the responsibilities of my new job, the matter was suddenly quite relevant to me.

I experimented with the options and eventually settled on Star Office for reading and writing .doc files (which it does quite well), and Gnumeric for reading .xls files (only because it's quick to invoke from the command line, unlike Star Office). .ppt files were rare enough that I could ignore them or else ask a non-engineer coworker to show it to me on their computer.

The Idea

With the release of KDE 2, I became very excited for Linux's prospect on the desktop. I idly discussed the possibility of switching some of our non-IT staff to an open desktop with our network administrator. He liked the idea (it would be less work for him, after all) but was very hesitant to propose it to the management. I kept the idea in the back of my head.

As it happens, MandrakeSoft had just recently signed on with us for their payment processing. We had the oportunity to meet a few of their people over lunch. And, they brought us a very nice gift: a boxed copy of Mandrake 8.0 Deluxe.

I gave it a try on my home computer first, and found that it was everything I had been hoping. KDE 2, user-friendly, GUI-based configuration tools, and apps galore. But I was a grizzled veteran of UNIX and Linux; I didn't feel that I was completely fit to judge whether it was truly "easy to use." Moreover, I'm very aware of my relative zealotry for Linux and all things open source, and I wanted to be sure that I wasn't pursue the idea purely on an emotional basis. Business is business, and I am only interested in bringing pragmatic ideas to the table. I decided there was only one way to determine if open source was an option on non-IT desktops: a test.

Guinea Pig

I pitched my idea to the management, and they were receptive to the possibility. It probably helped that my previous open source-releated pitch, releasing our TCLink API under the LGPL, had been a resounding success for the company. However, they were quite firmly against switching anyone who was already set up and productive with MS Windows and Office. We had just hired a new receptionist, however, who was due to start the next week. I proposed we start him on a Mandrake desktop. Since his main job was answering the phones, his computer needs were light (mostly email and the web), so management didn't consider it much of a gamble. They nervously gave me the go-ahead.

The network admin and I set up the computer. I went in and made a few key changes to the default configuration: setting StarOffice as the default handler for .doc and .xls files, and AcroRead for .pdf. I also went ahead and configured KMail for the new hire's email account. These few tasks complete, we left the system on and logged in, ready for him to use in the morning.

The next day I was kept busy in a meeting all morning, so I didn't get an immediate chance to check in on the receptionist. I fretted that perhaps he was struggling with his computer. At lunchtime I finally managed to get away long enough to go visit him. I walked in to see him mousing along - he had already changed his wallpaper and was in the process of sending some email.

"So," I said, trying to sound casual, "How's that computer working for you?" The anticipation was killing me, but I tried to keep my face calm.

"Great," he said. "I'm not sure what this is, but it sure is easy to use."

"VICTORY!" I thought to myself! Continuing to keep my face emotionless, I said, "Oh, that's good." He obviously had no idea what had just transpired: evidence (anecdotal, certainly) that Linux is perfectly user-friendly when the system is pre-installed. Still attempting to give him no hints that he was our guinea pig, I careful inquired as to his computing background. He told me that he learned on the Macintosh, but in the last year or two his employers had always given him Windows, which had consistently found difficult to use. "I guess that's why I like this," he said. "It seems a lot more like the Mac."

Deployment

As another piece of luck, the receptionist turned out to be a quick learner and was promoted to an assistant sales position only six weeks later. The sales manager told me that Linux on the desktop had been fine so far, but now that he was doing sales he would be reading and writing .doc and .xls files all day long, and so it was time to switch him to Windows. By this time, though, the network admin was quite happy that he had one less Windows machine to babysit, and the soon soon-to-be ex-receptionist didn't want to switch. The sysadmin stalled, the (now) sales assistant began performing his new duties with his open source desktop. A week later the sales manager realized that he had been performing said duties without any apparent file format problems, so the manager gave in and accepted the arrangement.

TrustCommerce was just beginning to enter a period of rapid expansion; we were hiring more aggressively than we ever had before. A new receptionist was hired to replace the previous one, and also received Linux on his computer. No problems there (especially once we had upgraded to the more stable Mandrake 8.1), and somehow our default policy had suddenly changed - instead of Windows, new hires got Linux. This turned out to be the key to the success of this project. We didn't switch people, for the most part; we hired them and got them used to using open source tools from day one.

The final nail in the coffin, so to speak, was the downturn of the economy in September. Facing the costs of supporting a greatly expanded employee count in a time of economic recession, our CFO was looking for ways to cut costs without reducing capabilities. A dozen new employees times twelve copies of Windows 2000 Professional & Office 2000 equals about $6000. Although this is not a huge sum in the day-to-day operations of a small-to-mid-sized company, it's not a negligable amount, and the CFO was quite happy with these savings.

Issues

Does everyone love Linux on the desktop? No. The CFO is happy, certainly. The sysadmin is enjoying his much lower-stress job, and in fact has grown downright surly about regarding maintinence of our diminishing number of Windows desktops. Some of the workers are happy; others, especially those with an extensive background with Microsoft tools, aren't entire thrilled.

For example, a senior salesperson was recent hired. He is very experienced with Outlook and MS Office, and complained (quite rightly) that he was less productive when first hired due to the unfamiliar tools. He cursed and swore that Konqueror wouldn't load maximized; I showed him the "Save View Profile" option, much to his relief. He complains that Star Office is bloated and ugly (again, rightly so) - he prefers to use KOffice for documents and spreadsheets and don't ever need to be converted from or two Microsoft formats. He cried that he was too disorganized because KMail doesn't offer a calendar - I suggested he click on the little picture of a calendar on his taskbar, and he bellowed with joy. Although he still prefers Microsoft tools, his ability to produce complex, attractive documents with StarOffice already far surpassed my own. He is able to do all of the day-to-day business of his very demanding position with 100% open source software. Regardless of personal preference, I feel that this is irrefutable proof that Linux on the business desktop is a reality.

An Open Office

Perhaps most interesting about the transition to open source on our worker's desktops has been the shift in perception that has accompanied it. Open formats are now preferred; plain text, HTML, and PDF are the only formats we send to customers and business partners. This isn't policy; it's just what our employees prefer, now that they are aware of a world beyond Microsoft. I asked the sales manager - the same one who balked at the promoted receptionist not using MS Office - why he exclusively sends PDFs now. "It looks more professional," he told me, quite sincerely.

I couldn't agree more.

Part II - The Tools

Here is a summary of the tools we evaluated for use on our workers' desktops. The ones that we settled on are listed first.

KDE

This is a no-brainer. KDE propelled the open desktop to new heights with the 2.0 release. And with each minor release (up to 2.2.2 at this writing), it just continues to get better. GNOME is the only thing which offers it even the slightest bit of competition; but to my mind, the GNOME team has been playing catch-up to KDE from day one. Without KDE I never would have dared suggest the possibility of using Linux on non-tech desktops. Even our CTO, a dyed-in-the-wool WindowMaker user, finally switched to KDE just recently. "The alt-F2 thing is what won me over," he admits.

The impressive list of KDE apps will continue to grow, I have no doubt. There are only two areas I'd like to see improvement on. The first is speed; Konqueror is a relatively fast program, but it is slow to load, and redraw (either as a web browser or a file viewer) flickers and pops. Compare this to Mozilla, which updates pages cleanly, without any flickering. The second is integration. Perhaps this is more in the hands of the distribution writers; but the #1 complaint we get in the office is that all the configuration options aren't in the same place. The KDE control center is excellent, but it doesn't control everything; in my opinion, all distributions should use the same scheme as Caldera OpenLinux and Redmond Linux: integrate 100% of the system configuration tools into the KDE control center.

<url=http://www.openoffice.org]StarOffice / OpenOffice[/url]

My complaints with SO/OO are many. It's big, ugly, and bloated. The install program is the horribly inefficient click-next-fifty-times method common on Windows. It's difficult to do a system-wide install. The widget set is a crappy imitation of Windows 95 (which is none to attractive to begin with). Desktop integration is terrible; even simple tasks like cutting-and-pasting in and out of the app is difficult. There's a million other gripes I have with this piece of software, but when it comes down to it: StarOffice is the single critical application which makes the open source business desktop a reality today.

This is a mature, stable app, that has all the features one would expect from a business-class office suite. The two parts of the suite which really count are the word processor and the spreadsheet. Both have all the features that you'd want, and then some. I suppose that's why it's so bloated, but to most of our workers it's these features that set it apart from the other options (AbiWord, KWord, etc).

It reads and writes MS Office formats like a champ. Complex documents created from scratch in StarOffice tend not to preserve their formating terribly well when saved to .doc, but loading in a .doc originally created on MS Word, modifying it, and then saving it back out usually works just fine.

Ironically, StarOffice started life as a proprietary application, and was made open source by a company who thrives on proprietary hardware and software designs - Sun. But we must thank both the creators of this package, and Sun, for giving such a wonderful gift to the open source community. Thanks to this one application, it is possible to have a truly open desktop. OpenOffice has already begun to address many of StarOffice's major flaws; we all use the latest beta of OpenOffice here at TrustCommerce, and it shows a lot of promise. (If only they would port it to GTK or Qt so that it wouldn't be some damned _ugly_.)

PDF Creation

Unfortunately I have not been able to get OpenOffice's print-to-PDF option to work for as long as I have been using it. In the meantime, the absolutely excellent KDE printing architecture (see below) allows one to print to a PDF. So, we simply print to a Postscript (.ps) file, click on that to open it in KGhostView, and then click "Print" and choose "Print to PDF." Voila, you have a gorgeous PDF.

Prior to the KDE print architecture, we used createpdf.adobe.com[/a]. For $10/month you get to create an unlimited number of PDFs from many file formats, including Postscript (which all UNIX apps with printing capability can export). It also converts .doc and .xls files as well, so it's just as useful for those who us MS Office but would like to produce open, professional looking documents for export to your customers or business partners.

Printing

For me, printing has always been a nightmare on Linux. I have tried and failed to set up printing through lpr many times over the years, and not once have I succeeded. I'm sure there is something simple I've overlooked, but if _I_ can't get it set up, then how can any "normal" person expect to do it? To be honest, I found it easier to write kernel drivers for Linux - I've written three now - than to set up a printer on it. (Maybe that's more of a compliment to the kernel maintainers than it is a slam on lpr!)

The Windows print architecture is one of the few things that Microsoft really got right from the start.
CUPS, combined with the KDE print architecture, actually bring Linux printing not only up to that standard, but exceeds it. Mandrake comes with CUPS out of the box; if you're not using CUPS already on your network, get it. It makes sharing printers between UNIX machines a snap. Our sysadmin also appreciates its interoperability with Windows and Macintosh print protocols.

My one major gripe with CUPS is that it doesn't have any way to cancel long print jobs which have already been spooled. Quite commonly someone hits "print" on a 200-page manual and then decides they want to cancel it on page 15, but it can't be done. The only way to fix this is to reboot the print server. Since we don't have dedicated print servers, this means interrupting the work of whomever owns the computer the printer in question belongs to. Many people have reported this as a bug to the CUPS newsgroup, and there is usually a reply which rattles off some technical information about stray ghostscript processes that can't be interrupted. Regardless of what the situation is, no one (in our office at least) will be happy with printing on Linux until this shortcoming is addressed.

Faxes

Faxes, and fax machines, are quite a pain. We run an almost entirely paperless office, and thankfully most of our customers are content to do business through electronic means. Faxes are still widely used, however, so we dutifully have several fax machines (any one of which is likely to be broken at least 60% of the time) in each of our corporate offices. Some time back, we also set up an eFax account - which has, quite honestly, been vastly preferable to me, and I know it's favored by quite a few of our sales reps as well.

eFax's incoming faxes are delivered in email, and arrive as TIFs that can be viewed with a slick little app called KFax. The only thing we have to do is configure KFax as the default viewer for the TIF filetype, and workers can just click on the attachment from KMail to view it. A small gripe is that KFax prints out pages of text to the console if you run it from the command line, which makes viewing faxes in that way a bit slower. Obviously this is not a problem for non-CLI users.

As far as sending faxes, eFax has a email-based interface which works from any platform. If you have a fax modem, those are supported as well, though I have not investigated them personally, so I will not recommend any specific package. A search on Freshmeat[/a] for "fax" turns up many useful-looking fax applications.

KOffice

KOffice is the suite that everyone here wants to love, but can't. Not because of any flaws, but simply because it still doesn't offer the maturity necessary to be a true day-to-day business tool. It's quite the opposite of StarOffice; lightweight, fast, excellent desktop integration, and possibly the most attractive office suite ever made. The apps integrate with each other extremely well; inserting a spreadsheet into a document or a chart into a spreadsheet is a snap. But the lack of the key features that StarOffice posses keep it from being a real contender. It reads .doc files in a very rudimentary way (no formating, colors, or images) and .xls files fairly well. It is unable to save either one. There's no auto-spellchecker, very few functions in the spreadsheet, and Krayon is only slightly above Microsoft Paintbrush's featureset.

That said, this is an office suite that was done right from the beginning. It's grown in absolute leaps and bounds in the short time it has been around, and KWord's unique blend of Quark-style desktop publishing and Word-style word processing could revolutionize lightweight business document creation. KPresenter is already extremely usable, lacking little in comparison to Powerpoint or StarOffice's presentation program. This suite isn't ready for business use today, but I suspect it will be a very useful tool for lightweight tasks very soon, and may even present strong competition to StarOffice and MS Office in a few years.

Crossover

A fairly recent option to become available is the
CodeWeavers CrossOver Plugin. Although its claim to fame is its ability to let users on open source operating systems view Quicktime movies, its real value to business is the fact that you can view Microsoft file formats (.doc, .xls, .ppt) natively in Microsoft's free viewers! It works like a charm, although lockups are still fairly common, especially on the .doc viewer. Although I've yet to come across a document that StarOffice couldn't open, this plugin offers an excellent backup option should it ever happen. And for workers who only need to view these file formats, not modify them, the Crossover install is a smaller, speedier alternative to loading it into StarOffice. I use it myself (mostly because of its advantage at the command line), but no one else here does, that I know of.

Note: it is proprietary software, but it's an absolute bargain at $20/ea. Better yet, the company does contribute most of their code back to the WINE project, so purchasing it definitely qualifies as supporting open source.

KMail

KMail is a very functional email app that offers excellent integration into the KDE desktop. It's nothing special, and personally I haven't found it to be useful enough to give up mutt. But most of our non-technical staff use it and are more or less happy - though most of them still claim they prefer Outlook. Email apps are kind of all the same, anyhow - I would guess that most of our KMail-using workers would be perfectly happy using (shudder) Netscape mail.

Konqueror

Konqueror is a great browser, though it has its share of problems. But it's perfectly adequate for business use; our employees are not visiting sites with Flash or other multimedia content, so those sorts of features (which are very important to home users) aren't an issue. Konqueror offers excellent integration with the KDE desktop, so it wins over Galeon and Mozilla, despite the fact that the later two are arguably better general-purpose browsers.

[=korganizer.kde.org]KOrganizer]

This is a great app for tracking appointments and To Do lists. The alarm feature is excellent. My one small gripe is that its method of saving and loading calendars is a little confusing; if you don't "Save" and then "Make Active" on your current calendar, it disappears into the void. This is counterintuitive given that the dock app (AlarmDaemon) is always residing on your panel, giving the illusion that there's only one calendar.

The one major feature is lacks is the ability to share calendars. If the KOrganizer maintainer(s) can make it automatically probe your local network to find other calendars running and offer to coordinate with them, I will put this on my list of "killer apps" for the open source desktop.

The Gimp

Converting artists to open source is probably one of the hardest sells. They are far more resistant to change in their tools than standard office users. In the end, though, our web artist was quite happy with the transition to the Gimp, and is quickly becoming a strong proponent of open source. I asked her to write a few words about the experience:


"I had been using Photoshop on Windows for many years at work, and on MacOS at home. When Adam tried to convince me to move to using the Gimp on Linux, I was hesitant because I was so used to Photoshop. I found it difficult getting used to the slight differences in the way some things worked, layers and selections in particular. Once I got used to the separated windows and focus-follows-mouse, I was ecstatic. I have always hated the way Windows forces all windows that are part of the same program to be stuck inside another larger window. The way gimp works thanks to X, is a superior working environment.

Tablet support is a big issue for me. I had no idea how well my tablet would work with Linux/Xfree. Once Adam set up my tablet in Xfree for me, I was amazed to find out how configurable and straightforward it is. I was able to fine-tune everything to a degree not possible with the typical 'dumbed-down' Windows drivers.

Now I do all my photopaint art on the Gimp. There are still a few things that I feel are missing, or at least things that I knew how to do with Photoshop that I haven't quite figured out with the Gimp, but they are minor things, and thanks to open source, things that can be changed. To me, the advantages of working in the KDE/X environment far outweigh any workarounds or getting used to. It is a fully functional photopaint program, and a worthy competitor to Photoshop. In fact, I haven't run Photoshop ever since and I haven't looked back."


WordPerfect

This is a proprietary product, so it doesn't fall into the category of a 100% open desktop. But it does run on Linux, and let's face it - ridding ourselves of proprietary operating systems is probably a higher priority right now than proprietary apps.

I evaluated WordPerfect for business use when I started my employment at TrustCommerce, and found it to be an excellent word processor. It shares most of StarOffice's benefits: it can read and write .doc files extremely well, and contains the mass quantity of features one would expect from a modern word processor. It also shares most of its flaws: it's slow and ugly (at least WordPerfect has an excuse - it runs on the WINE libraries), and doesn't integrate well with the desktop. I might have started using it, except that I refuses to install in a system based on the 2.4 kernel. Given the choice between the 2.4 kernel and WordPerfect, you can guess which one got the axe.

Evolution

I looked at this package for the first time when the 1.0 version was released. This is an app I'm very excited about; I don't know enough about Outlook to say how Evolution compares, but I would guess it is favorable. The methods of organizing folders, and especially the powerful search features, are enough to convince even this old mutt user to switch. Unfortunately, I was unable to get it to download from an imap mailbox, and I tried two different imap servers. I will probably be switching to this once I can get imap working. As for our other employees, they really love the integration of the KDE apps, so getting them to use a funny-looking GTK program may be difficult. But Evolution is leaps and bounds above KMail, so that may be sufficient motivation. We'll see...
</HTML>