1    Introduction

1.1    The Athena On-Line Consulting System

The MIT Athena Project comprises a host of computing services brought together via a large, campus-wide network of workstations and remote servers. Athena users can login to any Athena workstation on campus to access their files and do work, simultaneously and transparently using many of the distributed network services developed at Athena such as Kerberos for authentication, Hesiod for remote name service lookup, and Zephyr for real-time inter-user communication.

The Athena On-Line Consulting service (OLC) provides an interactive help system allowing users to ask questions regarding any aspect of Athena.

User questions are entered into a queue which is regularly polled by paid Athena consultants. When consultants see a question they are qualified to answer, they engage the user in an interactive, real-time dialog leading to a solution of the problem. OLC, like Athena, is receiving international attention as a viable support mechanism for large distributed systems, and is already in productive use at several sites outside of MIT.

The Emacs-based consulting tools are a set of specialized programs developed to enhance the efficiency and productivity of Athena consultants. These tools consist of the following programs:

EOLCR
The Emacs On-Line Consulting Reply (EOLCR) OLC client is the central topic of discussion of this document. It is the main program consultants use to do their work.

OLH
The Emacs On-Line Help (OLH) module is an Emacs interface to Athena's On-Line Help system. It is a menu-driven application allowing users and consultants to quickly access documentation about Athena software.

CRef
The Emacs Consulting Reference (CRef) module is similar to OLH in functionality, but gives consultants access to a database of consulting-specific information, such as Athena staff lists and on-line copies of consultant training seminars.

Dig
The Emacs Dig interface allows consultants to search the OLC database of previously answered questions. This is useful when a consultant cannot remember a particular answer offhand, but knows it has been answered before.

Klook
The Emacs Keyword Lookup (Klook) module allows fast access, via keyword lookup, of an OLC database of answers to common questions.

These tools are written almost entirely in the Emacs extension language, Emacs Lisp (elisp). They provide a consistent, customizable user interface (i.e. Emacs) well-known to the consultants using them, and present an integrated package covering most tasks needed to consult.

This document will first give a detailed description of the OLC system as a whole: how it is used and how it works. Then the above Emacs tools will be discussed, for each describing its purpose, functionality, and implementation.

Basic familiarity with the Emacs text editor is assumed. Some Lisp and C knowledge will be helpful in some, but not all, of the sections dealing with implementation.

1.2    Notation Conventions

For the sake of clarity and readability, some special conventions will be used throughout.