Word Processors:

Word Perfect
Microsoft Word
Vi
Emacs

by
Nora Lee
(nora@cpsc.ucalgary.ca)
940671
Tina Petersen
(petersen@cpsc.ucalgary.ca)
901206

Table of Contents

Executive Summary

The uses of four different Word Processors are explored in this document: Vi, Emacs, Microsoft Word, Word Perfect. Each of these Word Processors has positive and negative aspects. The negative aspects of Vi and Emacs were generally the painful lack of accessible or usable help or documentation. These two programs were also very user unfriendly as they give very undescriptive error messages. Vi and Emacs are also applications that must be used regularly or the commands will be forgotten since the commands are very arbitrary.

Word and WordPerfect also had rather long learning curves. But the basic learning curve, that is learning how to enter and exit the actual application was not nearly as painful and for the other two applications. Also, since Word and WordPerfect have a far larger list of function it is not surprising that the learning curve is as high to learn and become familiar with all the functionality of Word and Word Perfect.

We would definitely recommend Emacs to people who require very little document formatting capabilities. Emacs is very quick to load and provides the quick and easy access to the file for editing purposes. For the other office workers, who require an application that gives them intense document formatting functionality we would recommend MS Word. Word is easier to use than WordPerfect and more of an industry standard for those in an administrative position. For users intending to use their computers for intense desk top publishing we would recommend look at other products whose design is geared to this kind of function.

Acknowledgments:

The people depicted in this paper are very real people whom I work with daily. The events described herein are factual. The names have been changed to protect the innocent.

How Word Processors Stack Up in Our Office.

Background

Let's take a walk down our halls ad peak in to see what everyone is doing at their desk and take a look at the Word Processor applications that they use. Ours is a small office, perhaps 13 employees in total. We have a number of very talented people working for us. Our core business falls into three areas:

  1. Custom Application Development
  2. Groupware Solutions
  3. Document Imaging and Storage.

Each of our people is specialized in one or more of these areas. Each of their job functions requires them to use their offices and computers in different and varying ways. For example, Dick, our Manager of Sales, uses his office more for a storage area for pamphlets and sales paraphernalia. His computer, is a portable Digital Hi-note which is his constant companion. Where he goes, it goes. Dick uses his computer for sales presentations and RFP (Request for Proposal) documents. His computer, therefore is in many ways a glorified type writer. On the other side of the coin we have our hardware technical staff, like William. William mainly takes any computer we give him and dismantles it for cannibalizing. He has a decrepit old system on his desk that he uses once a week to enter his time sheet. When he is finished setting up the hardware he wanders happily off into UNIX land and no one hears from him for hours or days at a time. He completes the set up of a system before it goes to the client. William doesn't "use" computers, he brings them to their knees until they admit he is God and do his bidding for the client. Our software technical staff is quite different however. They are married to their computer and goodness knows what would happen if anyone even adjusted the contrast on their monitors without their express written permission. The happy, busy sound of keyboards clickity clacking can be heard almost constantly emanating from their offices. Rick, is one of our software people. Mostly, our programmers are very happy in their offices all day long. Occasionally, however, we insist that they interact with clients. After, the initial flare of panic they retreat once again to the relative safety of the their offices to draft multitudes of documents for the users to read and sign to make sure that the customer knows exactly what the programmers are building for them. After the dreaded client meetings they return to the solitude of programming.

Finally there is our administration staff, they are just as tied to their computers as our technical staff but in a different way. They use their computers to support the rest of us. They use them to place orders for hardware and software, track client contact, bill contact, and of course the all-mighty pay roll system. Donna runs this small department very efficiently.

Now that you have met everyone in our small 14 person office you may be very surprised to note that in even this small of an office we are not standardized in the applications that we use. Each department, and even each individual with in a department has their own pet word processor. The four word processors used in our office are: Microsoft Word, WordPerfect, Vi, Emacs. Each of these packages is very different from the other with very different functionality from any of the others in some cases. Yet, no matter how different each of these packages is, the fact remains that they all have a similar core function. Each of these packages, handles the entry of text in some way. They all allow the entry of text and yet because their individual users are different, in our office, they each store very different kinds of text.

Why Use PC Word Processors Rather Than UNIX?

One day, our boss, Rob had a meeting with all the departmental heads. This included Donna and John, our Sales and Marketing Manager. Rob asked whether we should have all personal computers in our office or all workstations with UNIX system. Donna and John argued over this question for almost two hours. Donna said we should keep our office up-to-date, but John said we should keep using PCs. John argued that easy setup and cost are two important concerns. He said setup for personal computers is much easier and handy than the UNIX system. At least our computer department can setup the DOS system by themselves. Even they may have problems sometimes, but they can consult manuals and books. We do not need to employ any experts. But UNIX system is much more complicated because it usually involves networking. This complicates the system setup. An experienced system administrator is required to setup the system. Even though our computer department can read books and manuals, it may be difficult to understand and expert from other network companies may have to be employed.

John also emphasized that purchase price and maintenance cost of a personal computer is much cheaper than a workstation for UNIX system. A personal computer is usually around $2,500 and it is rarely over $6,000. But a workstation may cost around $10,000. Maintenance fee for a workstation may also be more expensive than a person computer. It needs an expert to maintain the system and it may cost $3,000 a year. Furthermore, he also said that personal computers are much more user friendly than UNIX system. UNIX system requires us to memorize all the commands and we have to spend a lot of time to learn how to use it.

UNIX Word Processors

Vi 4.1

Word processors run the gamut from simple through complex, but all ease the tasks associated with editing documents (deleting, inserting, rewording, and so on). Lets begin our discussion of the uses and functions of these four different word processors with the oldest of them and ending with the youngest. Vi has been around for a very long time. In our office William is the primary user, he is the UNIX hardware guru. He uses Vi every day now, but I remember the exclamations of frustration when he first started using Vi. William, was a DOS machine hardware expert before he came to us and we forced him to learn UNIX. The only editor that came with our UNIX system was Vi . William was too busy to install Emacs or another less modal editor. The first time William had to edit a file in Vi I recall it taking him three hours to find out how to modify the file. Why did it take this long? William launched Vi then started typing. Vi does not put the user into editing mode when it first appears. The user must explicitly enter the editing and insert mode before they can type any text to be entered into their document. William soon discovered that the text he was typing was not appearing on the screen. He then tried to exit Vi so that he could go back to the UNIX OS to reference the manual pages about how to insert text into Vi . Now let me give you some background on William. William is a very quiet, patient, understanding father of two. He never lost his temper or even showed any indications of temper. Often a member of the Sales would wander up to William and off-handily mention that there was a demonstration tomorrow that they had forgotten to mention to him. For this demonstration they needed system X to be configured in a certain way. William wouldn't say anything he would simply stay most of the night preparing a demonstration for which the sales staff could have given a few weeks advance notice. The rest of us had often also have had this same experience with the sales staff. We would be completely flabbergasted, but complete the work required while loudly voicing our displeasure at having to drop everything else simply because the sales staff was so disorganized. William, therefore was being considered for Sainthood in our office. He never complained or voiced displeasure at anything.

Now let us return to William's first Vi experience. William had been unsuccessfully working most of the morning on getting a particularly tricky RISC configuration to boot. He had finally achieved the UNIX prompt when he launched Vi to begin editing a file he needed to modify. Powering down a UNIX system just so that you can stop one application from running is a fairly big deal, especially when you have just spent most of your morning trying to get the machine to boot. Poor William tried everything he could think of to exit Vi . Nothing worked. Unfortunately, by the time he tried to suspend Vi so that he could get back to the UNIX prompt he had inadvertently pressed "I" and entered the edit mode. In Vi once you are in the edit mode you can not suspend execution since every key stroke is entered as text. William did not handle finally having to power the entire UNIX system down very well. William's potential Sainthood was never considered again after that day. William is very familiar with UNIX now and uses Vi everyday. He has become very proficient at it. He still has not gotten around to installing Emacs. Why is Vi so very un-intuitive to learn? Why use Vi if it so problematic? All of these problem and more will be answered. Firstly, lets explain William's original problem a little bit. In Vi your initial state is the command state. In the command state it is not possible to enter text into the documents you are editing unless you exit the command state and enter the edit state. To enter the user must type the letter "i", meaning insert mode. In his frantic state to discover how to exit vi William must have inadvertently typed "i" and entered the edit mode. In the edit mode he would not have been able to issue any commands, including the exit command unless he had first left the edit mode by typing the "[Esc]" key. This would explain why William's first experience with Vi was so problematic. The help is not readily accessible or easy to find. Once you find the help is can be less than helpful and not easy to get out of. An additional challenge is exiting Vi. Vi has three ways with you can exit it. Three ways are required since no one of them gives you any options regarding the saving of your file upon exiting. If you select the wrong exit method then you're out of luck. For example, if you use ":q:" (exit without saving) when you intended to use "ZZ" (save and exit) you are out of luck since once you exit there is no way to go back and retrieve the information you intended to save. Nothing in Vi is intuitive. For example, "h", "j", "k", "l" emulate the functions of arrow keys: "h" is left, "j" is up.

William is however very fond of Vi since it has some very handy features. A rather nice feature is the ability to "edit" the text in a sense when the editor is not in official mode. While in command mode you can skip around your text or code deleting characters, using the "x" key, or you can replace entire words with "cw", or you can plurals a word with "ea. s" (meaning go to the end of the word and append an "s"), you can delete a word with "dew", or a line with "DD", you can even undo your last change with "u". However, even though all these commands are nifty William still grudgingly admits that there are problems with this scheme. While editing in this manner while in command mode he often forgets that he is not in fact in edit mode and end up typing strings of text with the computer beeping shrilly at him until he types just the right command sequence which sends him off into Vi command mode hell. Vi is however still very handy since it usually comes standard with UNIX systems. It is quick and dirty. This means that it is very quick to load up and out of memory for those fast little program edits that UNIX systems occasionally require. William is now very fond of his Vi and will look blankly at you when you ask why he hasn't loaded Emacs yet.

Emacs 4.1

The other individual in our office who uses the UNIX system with any degree of consistency is our Web Master. Tanya is fairly proficient at a number of UNIX applications. The University she attended to obtain her degree used UNIX systems. Tanya generally develops most of the Web Pages on her Macintosh and then FTP's the HTML files to the UNIX Web server. However, often when she has transferred the files and tests them on the Web she sees anomalies or inconsistencies that she needs repaired. For this task she uses Emacs. She runs a terminal from the Macintosh desktop she does not have the added luxury of running X-Emacs with its menus capabilities. Therefore she runs the basic Emacs 4.1.

Tanya attempted to use Vi once. Once was all it took to develop in her a deep and abiding hate for Vi. She encountered many of the same problems of William in terms of saving her file and exiting Vi. The end result of her hellish experience with Vi is that she refers to Emacs in the most and loving and affectionate terms, since it is also the only word processor available to her on the Web Server.

Apparently, when Tanya first used Emacs at school she encountered many problems with Emacs. The first of them was actually getting the darn thing to run. The professor had not written the applications name on the board so she did not know how it was spelled. She sat at her terminal and typed "emax" in many variants of capitalization and spacing until finally she gave up. A kind soul apparently helped her out a few days later. Saving files in Emacs is also less than natural. In Emacs you are by default in Edit mode. After every command you are returned to edit mode. This is far more intuitive and user friendly than Vi is since most people launch a word processor in order to edit the text in a document not look at while issuing random commands to the word processor.

As Tanya's proficiency with Emacs increased so did her list of learning follies. When exiting a modified file in Emacs it will confirm with you whether or not you wish to save the file before exiting. To save before exiting simply enter "y". There is not default for this. The user can not simply type [Enter], since the application does not interpret this as a alternate way of confirming a file save. In the case above, Tanya's "y" key on her terminal was not working. She could not therefore save her file before exiting. After an hour of editing this annoyed her to no end.

Every useful command in Emacs is accessed via the [Control] key. This can make it difficult to remember which key corresponds to which command. Since most commands are prefaced with a [Control] the following key press which determines the command rapidly looses connection or relation to the key being pressed. For example: "[Ctrl] y" means "yank" something from buffer (the "y" key press corresponds to the "y" in yank), however "[Ctrl] a" means go to the beginning of the current line (the "a" key press corresponds to nothing in that line). This means that Emacs, like Vi, is easily forgotten if not used often and intensively by the user.

Emacs has an enormous advantage over Vi, in that it allows the user to access commands that affect words, lines or entire sections of text without leaving the editing mode. The user can cancel an action at any time (with "[Ctrl] g"). Emacs is far more widely used than Vi and therefore more common and generally readily available on any UNIX system that you go to.

Emacs does however have a help window, which is a major advantage over Vi. William has been looking for a while no and has yet to discover one. He exits Vi and then uses the manual pages to secure the information which he needs. Even though Emacs has a help window it is not easily accessed. A user must first be aware of the [Ctrl] function set. The help system is accessed by typing "[Ctrl] h". This then pops a small mini-help window. If you have a basic understanding of Emacs this window can be very helpful, if you are new to Emacs it will be indistinguishable from poor gibberish.

One area where Vi is far superior to Emacs it load time and size. Vi is very fast t load and grabs very little space in RAM. It also takes up very little space on the hard drive. Emacs on the other hand is slow to load. Emacs is also often slow when it comes to carrying out functions. It can take a very large chunk of memory while squatting across far more disk space than Vi does.

Why Use UNIX Word Processors Rather than PC?

Since these pairs (VI & Emacs and Word & WordPerfect) of Word Processors run on two very different operating systems it is in a sense difficult to compare them. Also, since their OS's are so different, the end users of these applications are often diverse as well. For instance, William and Tanya, our two UNIX literate people are also very computer literate. The nature of their jobs and backgrounds are far more technical then those of Jane and Susan. Jane and Susan live in the slightly softer world of DOS machines. Susan especially, is cushioned from the hasher realities of real operating systems ( like UNIX) by Windows. Susan and Jane would likely encounter far more problems, far more frequently using Vi and Emacs than William or Tanya do. This is due to the fact that Susan and Jane simply aren't very technical people. The nature of their jobs does not require them to be. Incidentally, it is not a negative reflection of their intelligence to say that they are less computer literate than William or Tanya it is merely an indication of the variation of job function and interests of these two sets of people.

Conclusion

While all four Word Processors are equally good editors, their user's demand different functions of them. William and Tanya require a word processor that enables them to quickly and easily edit code or text without a lot of launch time, or RAM being eaten up. Jane and Susan on the other hand require a lot of added functionality. For instance, both need the bold and underline capabilities of their Word Processors and all the document formatting options that come complete with Word and Word Perfect. Anyone could argue for hours, for either of Vi & Emacs or Word & Word Perfect. However, in the end, the only true test of which of these products is better, is answered by what functionality does the user require and what job function are these products satisfying for the user.

[Begining of the Paper] [Table of Contents]
If you have any questions, concerns of comments, please e-mail Nora or Tina