Source:  Computers in Libraries, Sept 1992 v12 n8 p53(4).
                                                                              
    Title:  The Internet Gopher. (document delivery service)
   Author:  Gord Nickerson
                                                                              
 Abstract:  The Internet Gopher provides document delivery services for users
of the Internet. It simplifies access to data from multiple sources by
allowing users a common interface for all requests for data. The program is in
the public domain, so new implementations for different platforms are
constantly being developed. Future Gopher developments will need to address
multimedia retrieval.
                                                                              
 Subjects:  Computer networks - Usage
            Document delivery - Services
 Products:  Internet - Usage
                                                                              
  Magazine Collection:  66B3968
Electronic Collection:  A12723037
                   RN:  A12723037
                                                                              

Full Text COPYRIGHT 1992 Information Today, Inc.

The Internet Gopher

At the recent Canadian Library Association Conference in Winnipeg, there was a
lot of talk about gophers. Now you may wonder what a prairie gopher has to do
with networking; a quick peek at a dictionary provides a clue:

gopher n. 1. a burrowing rodent with wide cheek pouches. 2. A native or
inhabitant of Minnesota.

The busy habits of this little animal produced the slang expression of gopher
(or gofer) as someone who runs errands for others. It perfectly describes the
Internet Gopher.

This Gopher is not an animal but a distributed document delivery service for
electronic publishing across a TCP/IP network. It allows a user to access
various types of data on multiple hosts in a seamless fashion using a
client-server communications model. A Gopher server accepts queries from
clients and responds by sending the client a document which may be viewed on
the screen, saved to a file, or printed.

Gopher was developed at the University of Minnesota in April 1991 by the
University of Minnesota Microcomputer, Workstation, and Networks Center to
help users find answers to their computer questions. It was soon realized that
Gopher also could be used as a replacement for existing campuswide information
systems (CWIS)

Many campus information systems are used to provide read-only access to online
documents and use a hierarchical menu structure to arrange the information.
These systems provide online access to calendars, schedules, weather reports,
policies and procedures, job posting, news-letters, directories, subject
guides, tutorials, and practically any other kind of information you can
imagine.(1)

Most printed documents start as machine-readable text and can easily be
published electronically through an information system.

Most CWISs were developed with proprietary software such as Digital's VTX
product for VAX/VMS, or perhaps developed locally like the Princeton News
Network PNN software running under VM/CMS for IBM mainframes. One of the
design goals of Gopher was to move away from expensive, centralized computing
and used inexpensive desktop machines as servers in a distributed network.

Gopher puts the smarts in the server, making it easy to develop clients for
desktop machines with limited memory and CPU power. For example, the MS-DOS
client can run on a single floppy PC with an 8088 processor and a mono video
card!

The downside is that all servers are not alike and range in power from the
sophisticated full-text search engine on the NeXt, to the basic file services
of the Mac version. There are free public domain server implementations for a
variety of platforms including Unix, VAX/VMS, VM/CMS, MVS, and the Apple
Macintosh. Since the Gopher source code is readily available, versions for
other platforms such as OS/2 and Windows NT may also be developed. The source
code can be obtained by anonymous ftp from boom-box.micro.umn. edu in the
/pub/gopher directory.(2)

A Gopher server manages access to resources on its own computer and also
provides access to resources located on other machines running the Gopher
server software. Documents and databases can reside on multiple servers
located on many different machines across a network. Instead of a massive
centrally maintained database, departmental Gopher servers can be set up and
linked to a main Gopher. Local departments would then just have to copy and
update the files on their local machine, which would then be immediately
available to all Gopher users.

A Simple Addition to the

Daily Routine

Most documents are created in machine-readable form and the ease of providing
the information through Gopher can make electronic document publishing and
delivery a simple addition to the daily routine.

Since a Gopher system is easy to maintain, the staffing requirements are less
than other information systems. When the University of Calgary evaluated the
cost of implementing a CWIS, it estimated the personnel requirements for
central information maintenance to be one-fifth FTE for Gopher and one FTE for
other information systems.(3)

While distributed servers are a large part of Gopher's success, they are only
half of the client/server relationship. Separating the database server from
the client interface has a number of advantages. From the server's point of
view, it merely has to listen at a known port for a connection. With the
gopher protocol, the client initiates a connection and sends a series of
lines. The server responds with a block of text and then closes the
connection. The interface on the client then presents this information to the
user.

In a traditional terminal session, the host computer has to provide the
interface and respond to each character as it is input. The interface on
host/terminal systems has traditionally been based on the lowest-common
denominator, the dumb terminal. Your 486 may have more raw computing power
than the host machine it is connected to, but it still must emulate a
terminal.

By placing the interface on the client, Gopher is able to escape the tyranny
of VT-100 terminal emulation. Users get graphics, pull-down windows, mice, and
all the other conveniences of the desktop computing environment.

There are clients for the Unix, Xwindows, Macintosh, (HyperCard and a
Macintosh application), MS-DOS, NeXTstep, VM/CMS, and VAX/VMS systems. Client
software is available by anonymous ftp from boombox.micro.umn.edu in
the/pub/gopher directory.

All these clients run over a TCP/IP based network. If you are not on a network
and would still like to evaluate Gopher, you can use the VT-100 UNIX client at
the University of Minnesota. Telnet to consultant.micro.umn.edu (129.84.132.4)
and log in as gopher. Although you do not get the advantage of a graphical
client interface, it allows a user on a terminal to access the vast array of
information available on various gopher servers around the Internet and to get
a feel for the kinds of information available.

While the Internet Gopher is a great replacement or front end to many
traditional campuswide information services, it also can be used to provide
enhanced information services for libraries.

The Electronic Library

Librarians are good at filtering and organizing information, and Gopher
provides an easy way of organizing both local and remote resources to provide
better access for users and to help make the electronic library a reality.

Consider the problems caused by electronic journals and academic discussion
lists. There are a growing number of e-journals, complete with ISSNs and peer
reviewing. Some libraries deal with the problem by printing and cataloguing
them, others just ignore their existence and leave it up to the individual to
determine which journals are available and how to subscribe to them. Most
libraries do not even provide directories of e-journals and discussion lists
to assist their clients in determining what is available. How many libraries
have Psychology Digest (sci.psychology.digest) or bionet.journals.contents
listed in their respective subject guides?

Dealing with Electronic Journals

Gopher provides a way to deal with the problem. A library can take out an
organizational subscription to electronic journals and mailing lists and index
the files with the Gopher server software. Users can use their Gopher client
from their offices to search, read, download, and print articles or documents
of interest. For example, the library at the University of Michigan offers
Gopher access to PostModern Culture, Psycholoquy, Public Access Computer
Systems Review, and Current Cites.

Libraries also could offer indexes to their special collections, rare book
rooms, and archives. Many of these collections are not included in OPACs but
have guides or indexes in machine-readable form on microcomputers. For
example, Johns Hopkins University has set up a History of Science Gopher
server featuring the Henry Rowland Archive Index and project memos of the J.
Robert Oppenheimer Archives.

Reference tools, full-text documents, and news services also can be mounted
online with Gopher. The electronic books section of the University of
Minnesota Gopher server has just about all the Project Gutenberg titles
including the 1991 CIA Factbook, the complete works of Shakespeare, and some
historical documents. The same system also offers the full text of the Daily
Texan, the Minnesota Daily, and the UPI and Claris news services.

One complaint about many Gopher servers is the organization by type, a common
feature of both online and printed guides to the Internet. A more useful (and
difficult) method is to organize access to resources by subject. The
University of Minnesota server made an excellent start in this area by
organizing its Newspapers, Magazines, and News-letters menu by subject.

Multimedia Documents

Another problem with Gopher is that it is currently slanted towards the
retrieval of text files a time when multimedia is the wave of technology. The
current Gopher protocol defines other item-types besides text, but use of
these types is discouraged, and most clients currently cannot handle even
defined types such as binhexed Macintosh files, DOS binary files, or UNIX
uuencoded files. This can cause a problem with the Gopher gateways to other
programs such as FTP, Wide Area Information Servers, and the World Wide Web
Hypertext system that can process different file types.

This situation may change in the near future. The University of Victoria has
an experimental Gopher system using a fine arts image database which students
are required to examine and critique. The images are digitized. GIF files. The
Gopher client has been modified to display the graphic images along with the
text. This project demonstrates the possibilities of Gopher for multimedia
documents.

The Internet community also has been working on mechanisms for delivering
other forms of information besides text. The proposed Multipurpose Internet
Mail Extensions (MIME) will make it possible for documents to contain
graphics, images, and sound. In the near future, it may be possible to search
for information on gophers using Gopher and not only retrieve a full-text
article, but also a picture and whatever sounds the little animals make.

Notes

(1.) For more on CWIS, consult Judy Hallman, Campus Wide Information Systems
on the Internet [available via anonymous ftp from hydra.uwo.ca in the libsoft
directory as CWIS.TXT] and Campus Wide Information Systems [available via
anonymous ftp from hydra.uwo.ca in the libsoft directory as HALLMAN.TXT].

(2.) The people behind much of the gopher software can be reached by e-mail at
gopher(a)boombox.micro.umm.edu, or at:

Internet Gopher Developers

100 Union St. SE #132

Minneapolis, MN 55455

There is also a mailing list for announcements of new gopher servers and
software. Send a subscription request to:

gopher-news-request@boombox.micro.umn.edu

The Usenet News system also has the alt.gopher newsgroup, which is a good
source for updates, discussion, and announcements.

(3.) Debbie Wong, Campus Wide Information Systems Evaluation. University of
Alberta, January 1992. Note: All systems also required one-quarter FTE for
departmental information maintenance.

Gord Nickerson is the information systems support officer at the School of
Library and Information Science, Elborn College, University of Western
Ontario.
                                                                              
                                -- End --