Office tools for linux

[ Site Index] [ Linux Index] [ Feedback ]

Real computers, in real offices, get used for lots of tasks. The first jobs assigned to computers in business were accounting runs, keeping track of and billing customers; later on, word processing, spreadsheets -- themselves, a simplified, flexible financial planning tool -- and a range of other tasks were added to the mix. With the spread of networking, expensive resources (such as big disks, printers, and tape backup systems) could be shared: then communications layers spread over the network, including workgroup calendar systems, email, and groupware. There are also more unusual, but equally essential office tools: project planning software, customer relationship management tools, and bespoke business applications (typically stock or inventory databases).

The range of jobs for a computer in general business use is huge; so why is it that the only applications that get a lot of coverage are the "front office" ones -- typically spreadsheets and word processors?

There's no coincidence here. Firstly, spreadsheeting and word processing software is ubiquitous because everybody needs it; secondly, it gets written about a lot because even journalists understand it. (They have to, to deliver their copy on time and tot up their invoices.) In this feature we're going to dig a little deeper and look at some of the essential but unsung business tools that almost all companies need -- and at how well they're supported on Linux, which has traditionally been seen as a server and internet platform rather than a business tool.

Front office products

Linux is really well provided with front-office tools -- spreadsheets and word processors. In fact, there are so many of them that they are probably best tackled by category -- unlike the Microsoft world, no one package has achieved total hegemony on the Linux desktop.

Firstly, there are the commercial application suites. These are not necessarily the best, but you're guaranteed a certain (high!) level of performance if you buy one. The two market leaders are Anyware Desktop for Linux (formerly ApplixWare) and Word Perfect Office 2000 for Linux -- both of which are niche competitors on Windows (and formerly major players, in one case).

Both of these packages are large suites that offer much the same facilities as Microsoft Office, albeit in different formats.

Word Perfect Office 2000 from Corel consists of Word Perfect 9, the Quattro Pro 9 spreadsheet, Corel Presentations, and Paradox (a database system); in addition it comes with CorelCENTRAL, a contact and scheduling package/organiser, and a free copy of Corel Linux (a slightly out-of-date Debian-based distribution that nevertheless has the best, most tightly integrated implementation of KDE on any distribution).

If all of this sounds familiar, it should: this is the same Word Perfect Office suite as is sold on Windows. Corel have ported the Windows applications to Linux using LibWine, the implementation of the Windows APIs created by the WINE project. The effect is a suite of tools which, although they don't precisely match the look and feel of the KDE or GNOME desktops, interoperate well with each other and should feel familiar to many users. In particular, Word Perfect can't be described other than as a world-class word processor, while Quattro Pro is one of the better spreadsheets from the Windows world -- it's a shame it lost out to Excel. Botth these tools come with a plethora of import/export filters (including Microsoft Office 97 and 2000), and if you are an existing or former Word Perfect user there's no real alternative. Paradox is a slightly odd beast; while it occupies a desktop database niche there's a real relational engine under the hood -- it's particularly well-suited to taking spreadsheets and merging them into databases. In addition to supporting a query-by-example visual query interface, Paradox provides an SQL data manipulation language. Note, however, that Paradox 9 on Linux does not support OLE (obviously) or ActiveX, and is therefore very limited in usability as a database system. (Which is a shame, because its visual form designer is good.) You should also note that Word Perfect Office 2000's installer insists on seeing a copy of LibC 2.0 -- the newer versions in current Linux distributions (such as the review machine, running SuSE 7.2) doesn't satisfy it. (You may find the script available at helpful).

AnyWare Desktop -- formerly Applix Office is a similar suite, albeit more tightly integrated than the Word Perfect one. AnyWare tools are launched from a common toolbar and include the usual range of suspects -- plus an IDE that allows rapid development of applications written in SHELF, AnyWare's macro language. SHELF has fairly good relational database integration facilities (talking to Informix, ODBC, Oracle, Sybase, and the ShelfSQL proxy (which can talk to MySQL), although it's a bit too BASIC-like for some tastes. This version of AnyWare desktop -- release 5 -- is a true native UNIX application, has been ported to use GNOME widgets, and integrates tightly with GNOME; it's an attractive-looking environment, powerful but with less clutter than the older Corel product. And at US $49 for a single-user license, it's cheap (by commercial standards).

What really slays both Corel Office 2000 and AnyWare Desktop 5 in the Linux market is the fact that there's a whole range of alternatives that are free. Both the GNOME and KDE desktop projects have their own office suites; GNOME's consists of disjoint applications (the AbiWord word processor and Gnumeric spreadsheet), while KDE's consists of the KOffice suite. Neither KOffice or GNOME Office are ready for business use yet, but they show promise. Meanwhile, Sun acquired Star Division a couple of years ago, a German software house who were creating a clone of Microsoft Office; StarOffice 5.2 is available free for download from Sun, and the source code has been freed and forms the core of the nascent Open Office product. Open Office is also not yet ready for prime time, but promises -- like the Mozilla/Netscape 6 project -- to form the core of a product that is the equal or better of Microsoft Office; meanwhile, the current release is not available in source code but is free for all users to download, and has been deployed in a variety of corporate and government situations.

StarOffice provides the same facilities as the other office suites, albeit in a single integrated office package. There's a spreadsheet, word processor, presentation graphics, interface to the ADABAS-D relational database engine, drawing and charting tools, and a passable clone of Microsoft Outlook. Users of Microsoft Office will require some minimal orientation time -- StarOffice provides its own desktop complete with a "Start" menu -- but most of the features are present in the same place as in Office 97. StarOffice is a tight clone of Microsoft Office -- many Office macros will run on StarOffice without change, and it can read and save Microsoft Office 2000 documents; about the only thing missing is support for ActiveX (obviously, as this isn't really available on any UNIX-like platform).

In conclusion: if you want to put Linux on desktop PCs for front office and secretarial work -- reading email, writing letters, running spreadsheets, and preparing presentations -- you are spoiled for choice. Any current distribution, along with StarOffice (which ships with all of them) or one of the commercial alternatives (which are priced cheaply compared to Windows equivalents), will give you a workable desktop environment at a fraction the price of a Microsoft Office license.

The situation only becomes muddier when you begin to think about automating your back-office tasks ...

Running projects

Many businesses are project-based: web consultancy, software development, engineering projects of every kind, building, exhibitions management, and so on. Project management is the science of ensuring that the essential components -- tasks and deliverable products -- of a project all come together on time (and on budget), so that knock-on effects don't delay the entire sequence. Project management tools track inter-related tasks and provide a mechanism for scheduling and reserving resources (such as workers or specialised tools), as well as automaticaly minimizing time-lines or costs by re-arranging schedules. There are several complex algorithms that have been discovered to try to efficiently solve this problem (including hill-climbing, simulated annealing, and monte-carlo methods); good project planning software provides a number of options. One of the hallmarks of a project management package is the ability to produce Gantt charts -- showing the overlapping time series of tasks and allowing the reader to see which tasks fall on the critical path of the project (i.e., those tasks which, if delayed, will propagate the delay to the rest of the project).

The market leader in the project management software field is Microsoft Project -- which, unsurprisingly, doesn't run on Linux. (Although it has been reported to run well under WINE and VMWare.) There are quite a few Linux-based project management applications; most of them have a web- based user interface and generate the GANTT chart 1offline.

One example of the free project management tools available is Opensched. Opensched has no user interface at all: it's a command-line tool. You write a list of tasks using a text editor, in a fairly simple description language. You then feed the schedule to the opensched compiler; this generates a LaTeX file that includes a readable breakdown of who's supposed to do what and when, and a GANTT chart of overall project activities. This can then be turned into PDF or postscript.

Opensched has some advantages -- you can easily bolt a graphical interface on top of it if you're a programmer, it's very lightweight, and its output looks good -- but an office application it ain't. If something that resembles Microsoft Project is what you're after, you would do better to look at MrProject, a GNOME project management package from CodeFactory, a bunch of Swedish open source software developers. The only trouble is, MrProject looks promising but is still in the early stages of development.

Going upmarket a little, there's AMS RealTime Project. AMS Realtime is an enterprise-grade set of management tools for controlling costs, projects, resources, and tasks in large (read: corporate) projects. It's cross-platform -- running on UNIX, Linux, MacOS and Windows -- interoperates with Microsoft Project, and uses a client/- server architecture to tie disparate tools together. The only problem is, it isn't cheap; it's at the Oracle end of the software spectrum.

Conclusion: there's not really any equivalent of Microsoft Project for Linux unless you have an enterprise-level budget; Mr Project may fit the bill, but isn't ready for the big time yet.

Tracking customers

Every business (except undertakers) likes to have their customers come back for more. One area where Linux has a good range of back-office software is the vague category of help desk, customer support, and call tracking software; at the high end this blurs into CRM (customer relationship management). Help desk and tracking software aims to streamline and push down the cost of servicing customer calls via telephone or email: it's particularly useful when handling support calls -- a labour intensive job that costs real money. They typically point inwards at the organisation, streamlining interactions with existing customers. CRM tools face the other way, and rather than attempting to streamline costs within the company, they point outward at potential new customers; they manage lists of contacts and their interests, and also coordinate advertising, bulk-mail, and press-release marketing campaigns targeted at the contacts.

At the top end of the market, Linux is supported by CRM and workflow management tools -- but at the top end of the market, if you're thinking about buying into SAP R/3, you are looking for an operating system (and hardware, and mainframes, and technical staff!) to support the application, not vice versa. (An implicit theme of this article is: you've committed to Linux for some reason or other, what tools exist to do the job on this platform? An assumption that is invalid at the top of the market.)

However, Linux's popularity in the ISP sector -- it's the commonest platform for running ISP services such as web servers and mail servers -- mean that it is also well-provided for with tools for tracking customer complaints and contacts (even if most of these tools have an ISP-ish feel to them).

Trouble ticketing systems are used for keeping track of customer complaints and software bug reports. The idea is that when a complaint comes in, it is assigned a reference number and entered into a database. Once in the system, complaints can be tracked, workers assigned to them, and they can be escallated, transferred to some other department, or closed when a solution is found. There are scads of open source trouble ticketing systems; for example, Bugzilla, the bug tracking database used by the Mozilla project, or Wreq.

Bugzilla is primarily a database for bugs; it's most useful to organisations that are developing software, although it can be tailored to fit the needs of other types of project that generate feature requests, reports of defects that need fixing, and so on. It lets people report bugs and assigns these bugs to the appropriate developers. Users can use bugzilla to keep a to-do list as well as to prioritize, schedule and track dependencies.

Bugzilla consists of an HTML front end that you can use to perform queries into the database. Although Bugzilla was first installed at but since then several companies, private and public, open source and commercial are using it to track software defects.

Wreq is a distributed request/problem tracking system developed to help the support staff at Duke University cope with requests, and to provide a shared knowledge databbase. It's unusual in that it is designed to prompt knowledge sharing among multiple local support groups. Most departments in a large organization normally have their own local staff to support their computers and networks, and one common problem is that there is no easy or automatic way for all the local support groups to share the knowledge and expertise they each have. Wreq automates the sharing process; the organization can set up wreq on one chosen web server and configure it to be the root req server for all the departments. Each department can then put wreq on their local web server and tell it to handle requests from people within the department. Users can submit requests either by accessing their local req server's URL or by sending email to the req server's email alias.

If trouble ticketing systems like Bugzilla and Req are mostly specific to the software industry -- or any engineering operation that deals with customers -- they blur at the edges into knowledge management systems and CRM systems. Low-end CRM systems on Linux are still in their early days, but there are a couple of open source projects. The Open Source CRM Project from Akio Solutions currently consists of KeyFactor, a complete and fully functional targeted email campaign manager. It allows the marketing/sales department to create email campaigns specifically targeted at individuals (its not a B2B tool, and doesn't handle corporate accounts). Through its reports feature, it can provide sales forecasts. It a set of PHP pages, coupled to a MySQL or PostgresSQL backend.

Then there's Anteil CRM. This is an open source campaign management system with a web-based interface, implemented mostly in PHP but with API's allowing it to be extended in PHP or C++, with HTML/XML/Javascript for the user interface.

Anteil's open-source CRM software offers a variety of basic features to help any business manage and improve its customer relationships: bulletpoints on their list of features include consolidated account information, contact manager module, sales opportunity manager, campaign manager, event manager, consolidated marketing materials, corporate communications, calendars, sales forecasting system, high-level security. (If all this sounds like a whistle-stop overview, that's exactly what it is: your humble reviewer is a Linux software specialist, not a marketing campaign manager, and cannot comment on how effectively Anteil CRM can help you run your ruthless assault on the market.) On the other hand, if what you need isn't in this list, Anteil sell consultancy and support services and would be happy to quote for additional features.

Accounting and billing

One set of chores that every organisation must address is finance; managing its accounts, doing the payroll runs, keeping track of assets. The accounting field in the UK is dominated by one company -- Sage -- whose products run only on Windows. (High end enterprises tend to use bespoke solutions from Oracle or SAP, but these tend to be custom jobs and are eye-wateringly expensive.) If you're looking for an accounting system, the best advice I can give you is to listen to your accountant -- however, a solution suitable for Linux-based businesses may be available real soon now.

Jalia Accounting Software is an all-new accounting package for Linux, due for launch late in 2001. It's the product of nearly a year of development work by a chartered accountant and a team of developers; it's aimed squarely at Sage's marketplace, but unlike Sage it's a scalable multi-user system based on Linux. At the core of the Jalia accounting system is an accounts database, currently implemented on top of the PostgreSQL database engine. The Jalia software itself is written in Java (and can therefore be expected to port to MacOS X as well as Linux without too much difficulty).

Jalia is modular, like Sage: it comes with a variety of components, including nominal ledger, customer, invoicing, supplier and bank modules, and can track fixed assets, products, and VAT; it's able to process sales orders and purchase orders, and can generate a variety of accounting reports. It all looks highly flexible and configurable, and generally comparable in features to the basic Sage packages. On the sales side, it's possible to handle inventory products and one-off non-inventory items, with individually specified discounts and sale prices; discounts can be varied on a per-customer basis.

One interesting point is that the Jalia software uses PostgreSQL as a back end. Thus, you can run Jalia on one workstation and keep the database on a central server. As a multiuser system, it permits different user accounts to work on the same database -- and it can enforce access privileges, so that some users may have restrictions placed on their activity. This is a big step forward from Sage's single computer, multiple user stance, making Jalia look promising for companies with multiple staff working on accounts. Unlike Sage, there doesn't seem to be a standard API for extensions -- but because the data is stored under PostgreSQL it should, in principle, be possible to write modules that extract information from the system and process it in various ways. On the other hand, unlike Sage, Jalia hasn't been around for long -- it remains to be seen whether it will do the job out in the field.

Jalia are promising a Linux-based payroll management system as well, but this will be sold as an ASP (web-based) product; their philosophy is that most small companies don't have a full-time payroll or human resources department, and as a once-a-month task it's reasonably convenient to simply have somebody log onto a secure web server to run the job.

As noted, this software isn't shipping at the time of writing (but is in late beta). Don't expect an open source solution to the small business accounting problem -- writing book-keeping systems is, frankly, about as boring a programming job as you can imagine, and doesn't seem to be the kind of free software project that attracts volunteer developers! (GNUCash and MoneyDance are making progress as personal accounting systems, but the requirements of balancing a checkbook and declaring income for tax purposes are somewhat different from the requirements of managing a company's sales and purchase ledgers.)

Working in groups

People like to stay in touch with their co-workers, and nowadays this means more than telephone extensions, fax, and email.

Linux has an enormous range of internet tools designed to keep people in touch with one another. The main mail servers that carry the bulk of internet email -- such as sendmail and qmail -- run on Linux. So do the main web server -- apache -- and the main usenet server -- inn. Books have been written about how to use these tools to build a corporate groupware system that provides the non-calendrical facilities of a system like Microsoft Exchange, without the scalability problems (Exchange really hates running on a system with more than 500 users -- inn and sendmail are happy with hundreds of thousands). In fact, setting up an open source groupware system is such a big topic that you don't need to read an article, you need to read a book: "Practical Internet Groupware" by Jon Udell (pub. O'Reilly & Associates, ISBN 1-56592-537-8).

One of the main items that is absent from the open source field is the shared calendar system used by businesses to arrange meetings; while some basic ones exist, the field is dominated by commercial offerings. Netscape Calendar 4.0 for Linux is a clusterable multiuser calendar server compatible with Netscape and Internet Explorer; if your users use StarOffice you may also want to look into StarSchedule, a (free) calendar server that works specifically with StarOffice and Palm Pilot users to let them synchronise their calendars and to-do lists.

IBM's subsidiary Lotus are focussing on Linux as a server for their groupware product, Domino; Domino is basically a version of Lotus Notes Server that uses the web as a user interface instead of the proprietary Notes client. Notes incorporates a calendar system, but it's far more than that: the buzzword here is groupware. Notes provides email services within a group of users. It provides IMAP gateways so that external clients can read their email, SMTP gateways to internet mail servers, and gateways to legacy services such as cc:Mail so that users can keep their old corporate mail accounts. But it provides a whole lot more, too: tools for creating structured hierarchies of documents, tools for making those documents searchable, tools for accessing them via the NNTP protocol (used by usenet) or via the web. In fact, Notes (and Domino, the web version) is one of those programs that is all things to all users -- some see it as an email tool, others as a calendar, and more as a way of managing workflow and ensuring that tasks are carried out in accordance with the designated procedures in the business.

IBM are pitching Domino at the Linux market as part of their IBM Small Business Suite for Linux 1.6 ; it comes along with the WebSphere web application framework, DB2 database, and WebSphere home page builder for Linux -- the whole bundle is priced at US $499 per server and $90 per desktop. This is IBM's first stab at producing a rival for Microsoft Back Office 2000 and its descendants; it provides the customer company with a heavy-duty database server, a web publishing framework suitable for e-commerce (and a graphical tool for managing it and developing content), and Domino as glue to manage unstructured information within the organisation.

Summing up

A lot of guff is spoken about Linux "not being ready for business". This is, frankly, hot air. Linux has a plethora of applications -- if what you want to do is work with spreadsheets, process words, or run a relational database server, you've got more choices on Linux than on, say, MacOS. If your business is web-based, Linux is almost the ideal platform -- you can do end-to-end business automation on it quite easily, and your real headache will be choosing the software to use rather than finding it in the first place.

Where Linux shows problems is in some of the more obscure applications domains. Accounting is an obvious one, as is project management; luckily there are signs of these gaps being plugged, for example by the Jalia accounting system. The holes are most obvious if you look at specialist fields -- for example, pharmacy management or architecture practice -- where the vertical market applications haven't yet migrated over; that will probably have to wait for Borland Kylix and the GNOME visual basic clone to spread out into the developer marketplace. But if what you want to do is run a general business, Linux is very much a workable proposition; and you could save yourself a lot of money if you use it.

[ Site Index] [ Linux Index] [ Feedback ]