John McCarthy
Computer Science Department
Stanford University
Stanford, CA 94305
jmc@cs.stanford.edu
http://www-formal.stanford.edu/jmc/
JanFebMarAprMayJun
JulAugSepOctNovDec , :< 10 0
The thesis of this lecture will be that there is no difficulty in getting people to use computers in offices provided the computer and its applications are genuinely useful. However, the criteria for usefulness are often not what one would imagine, and some further research is required before the real computer revolution happens.
I became interested in office use of computers in 1957, and this was one of the motivations for my research on time-sharing - the main one being use in artificial intelligence research. The first time-sharing system at Stanford was a PDP-1 in 1964. For that we provided no off-line program preparation equipment, and when we specified a display system, we insisted on both upper and lower case with a view to using the system for preparing documents as well as other applications.
A. Office Computing at the Stanford Artificial Intelligence Laboratory
The Stanford Artificial Intelligence Laboratory received its PDP-6 computer in 1966, and it was planned to use the computer for office applications from the beginning. All displays and the printer permitted upper and lower case and a reasonable set of mathematical symbols, and we began improving on-line editors. The first PhD thesis written and printed on the computer was in 1971.
Our progress in office use of the computer was mainly paced by hardware acquisition. While we could print documents from the beginning, there was no motivation to prepare them on-line as long as we were using uppercase-only teletypes for terminals. When we acquired our first display system, on-line preparation of documents began, but until we installed our 60-terminal Datadisc display system in 1971, the terminals were in a terminal room. Putting the terminals in offices, which included supplying the secretaries with terminals, was a major step. Gradually more and more Laboratory administrative files were kept on line, and the secretaries could help prepare papers. However, since it also became easier for researchers to enter and edit their own papers, there was less typing per secretary. People differ in the extent to which they work through typists and secretaries, and an office system should provide for these differences.
Getting on the ARPA net gave a big stimulus to message sending inside the Lab as well as over the net. The E editor permitted more effective use of the displays. The POX and PUB document compilers automated many editorial aspects of document preparation. When Xerox gave us a Xerox Graphics Printer, this made possible preparing multifont documents with arbitrary character sets.
Many people work both in the Lab and at home, and their easy use of office computing requires home terminals, of which we now have a fair number.
Donald Knuth's TEX and the associated acquisition of high quality printing equipment have substantially increased the documentation use. Knuth's vigorous publicizing of TEX including the book has been at least as important as the program itself. Even mathematicians are beginning to use our computers for producing theses and papers. They have always been among the slowest to make use of computer facilities. This is because mathematics is mostly done at a high level of abstraction, and we are only beginning to develop computer programs that communicate this abstractly.
Besides the main programs associated with office use, many auxiliary programs for looking up data in files and even computing have been developed.
B. Conclusions from Our Experience
C. Some More Controversial Contentions
I cannot claim that these contentions have been verified by experience, because I haven't enough.
Usefulness for executives will depend on how many of the people with whom they must communicate also have terminals.
Anyone who does much work at home should have a terminal at home.
First it must concentrate on the kinds of mistakes that can be detected and prevented by bureaucracy - whether it be the programmed bureaucracy of a field that allows only numeric input in a certain range or the administrative bureaucracy that requires a comment for every statement in a program. There are many situation in which the bureaucracy spends its time preventing trivial errors, while major substantive errors are ignored, because the input embodying them is "grammatical" according to the lights of the system.
Second, idiot-proofing takes time, and it often happens that the idiot-proof programs are insufficiently debugged. There is nothing as annoying as trying to get a program to accept input that it is rejecting for trivial reasons.
Third, idiot-proof programs are usually extremely inflexible and are difficult to modify to take new data into account.
Let me describe an experiment that unfortunately was never carried out. A certain university found its on-line registration system terribly late, full of bugs, and expensive of computer resources. The experiment was to have the clerks prepare the registration material using an ordinary editor - labelling the items in the text of the record. The files prepared by the clerks would then be processed by programs to get it in the desired form. Unlike on-line input-receiving programs, the processing program could be written while the input was taking place, and if bugs showed up, they could be corrected after the fact. Even last-minute changes in the information to be included could be accommodated. The results of the data-entry could be printed and checked by supervisors or the supervisors could examine them on line. However, the university took the "safer" path of buying another computer.
Unfortunately, the task of writing a computer program for others to use seems to bring out the latent tyrant in many people.
D. A Step Further Out
There are many opportunities for expanding the usefulness of computers in offices, but many of them require the development of standardized facilities.
The Stanford Artificial Intelligence Laboratory is developing the Dialnet system. This consists of a telephone dialer and suitable modems connected to our computer and software implementing the Dialnet protocols. Anyone else in the world can similarly equip his computer and users of any computer equipped with Dialnet can communicate with users of any other.
Sitting at my terminal I will be able to type "MAIL MIKESMITH@202-666-6666 Mike are you free for lunch on Thursday?" Once I have done this, I can use my terminal for other purposes. My computer calls a computer at that number and tells it that it has a message for a user called MIKESMITH. He gets the message immediately if he is logged in - later otherwise. We can do this now for computers on the ARPAnet, but why go through all that politics, when the telephone system is available? Dialnet can also be used for transferring files between computers.
The 1200 baud limitation of present Dialnet is important for some applications but not for messages and transfer of medium-size files like reports. If one specificies NIGHTMAIL the telephone cost for a 9000-byte message will be only a little more than the price of a stamp.
This can be made possible by a universal system for describing existing files which can be developed using the techniques for describing grammars and data structures.