Mark P. McCahill
Distributed Computing Systems & Services
University of Minnesota
Thomas Erickson
User Experience Architect's Office
Apple Computer
(now at) snowfall@acm.org
This paper describes the beginnings of an exploratory design project: its
aim is to sketch out a starting point for the design of a 3-D spatial interface
to a large, internet-based information system, and to capture some of the
initial design rationale. After this, we intend to refine the design, implement
it, make it freely available over the internet, and observe the reactions
to and usage of the interface.
Although we will discuss the rationale for a 3-D spatial interface in more
depth in the paper, it is worth summarizing our basic motivations up front.
First, we hope to learn about the design issues that are raised by 3-D spatial
interfaces. Although 3-D interfaces have been getting increasing attention
from researchers, little attention has been devoted to the design tradeoffs
involved. Second, most of the 3-D spatial interfaces in existence -- particularly
those that provide interfaces to information spaces -- are in research laboratories;
the opportunity to create an interface that will provide an extremely broad
range of people with access to a public information space of millions of
items seems too good to pass up, and with the advent of RISC-based personal
computers, the time seems ripe. Finally, we would like to put our beliefs
about the advantages of 3-D spatial interfaces to the test. We see two possible
advantages: First, 3-D seems to provide the possibility for representing
many dimensions of information and meta-information in a compact and natural
way. Second, we believe that in the long run information spaces will also
be used as social spaces, and that 3-D can serve as a natural framework
for supporting social interaction (Erickson, 1993).
In this paper we begin by describing internet Gopher as it exists today.
Then we discuss some of the known problems that we hope to address, as well
as some new prospects opened by moving to a new type of interface metaphor.We
distill these problems and prospects into design criteria, and then sketch
out the basic design with comments on the design rationale inserted as appropriate.
Internet Gopher is an information system used to publish, organize, and
find information distributed across the Internet. Gopher consists of information
servers which may reside anywhere on the internet, and a number of clients
which are used to access information on the servers. Gopher is a decentralized
system: Gopher servers are administered by a wide range of individuals and
organizations -- virtually anyone who has access to information and to a
machine on the internet can, with a little technical know-how, create and
maintain an information server. Similarly, Gopher client applications are
widely available and provide access to any of the information servers on
the internet, with the exception of a small number of limited-access servers.
To the individual user Gopher appears to be exceptionally simple: it provides
access to a hierarchy of information which the user can browse; the fact
that information is stored at different places on the internet is typically
invisible to the user. We will refer to the sum of all Gopher-accessible
information on the internet as Gopherspace.
Since its introduction in June, 1991 Gopher has become quite popular. In
December 1993, there were over 4800 gopher servers accessible on the Internet,
and well over 1.5 million items accessible in Gopherspace. By March 1994
there were 6700 Gopher servers accessible over the Internet. Gopher traffic
across the NSFnet backbone has been increasing at an average rate of 20%
a month during the last year, and Gopher's share of the total NSFnet traffic
has increased to about 3.5%. There are now at least 4 different Macintosh
Gopher clients, 5 Windows clients, 4 clients for Unix/X-windows, 2 Amiga
clients, a VMS client, and even Gopher clients for MVS and VM/CMS. All these
clients have conceptually similar user interfaces.
The typical gopher client presents users with a directory hierarchy to navigate
(figure 1). Each gopher directory may contain items of four types: documents,
search engines, icons for launching telnet sesions, and other directories.
Gopher clients typically display the contents of a directory in a window,
with an icon representing the type of item followed by the name of item;
the name of the directory is used as the title of the window. Some clients
restrict the user to viewing each successive directory in a single window,
while other clients allow for multiple windows (each successive directory
is displayed in a new window). Gopher clients provide no representation
of a Gopher Server as a whole: an item in a directory of one Gopher server
may be a link to an item on another Gopher server so that, to the user,
boundaries between servers are invisible.
The design is motivated by a mix of pragmatic and exploratory impulses.
On the one hand, there are several usage problems that would be difficult
to solve within the constraints of the current interface metaphor. And,
on the other hand, the advent of RISC-based personal computers means that
there will be sufficient power to support a whole range of new behaviors,
offering the prospect of transforming information systems into more flexible,
information-rich environments. We will begin with a brief discussion of
the motivating factors, and will then summarize these as design criteria.
Problems and Prospects
While the current user interface is popular, there are three well known
usage problems.
The Lost-in-Space Problem
Users complain of feeling lost after navigating for a while and have
difficulty remembering where they found an interesting item. In part, this
due to the absence of any global representation of the structure of information
hierarchy, and in part because the path followed by a user is either invisible
or, at best, implicitly embodied in a stack of directory windows. The 'lost-in-space'
problem has been observed in a number of other domains, most notbly hypermedia.
Users need an overview of gopherspace, within which they can see their locations
and the paths they have followed.
The Grouping Problem
Within a directory it is difficult to show relationships between items
represented in a linear list. Some server administrators resort to putting
items with blank names in their directories to group clusters of items.
An analog of this problem occurs in lists of results generated by search
engines. The results are typically sorted by relevance (as ranked by the
search engine), but the user interface doesn't have a good way to convey
their relative relevance. And, as in directories, it is difficult to show
the clustering of related sets of documents. Ideally, both relevance to
the search terms and "closeness" to other documents (along a variety
of user-specifiable dimensions) ought to be visible to the user at a glance.
TheBrowsing Problem
It is difficult to browse because documents reflect so little of their
content. All that is available is the item's name and the information about
the document's type embodied in the icon.The user's only other option is
to open the document--often a time consuming process--and see everything
in the document. Neither option is supportive of browsing: users need to
see more information about the content of a document without there being
so much that they are unable to compare and contrast different documents.
In addition to remedying today's usage problems, there are a number of intriguing
prospects which a new interface could open to exploration:
Interaction Traces
Users browsing a large information space could benefit from the activities
of previous visitors. For example, users are often interested in knowing
about the relative popularity of documents, as judged by the frequency with
which they are viewed or copied. The idea behind interaction traces is that
this could be reflected in the visual appearance of the document's icon.A
number of researchers have explored ways in which visibile representations
of computational objects can reflect traces of the ways in which users have
interacted with them (e.g., Hill, et al., 1991; Wroblewski, et al., 1994
).
Providing a Sense of Place by Customization
Today, gopherspace is generic: any gopher directory looks like all
the others, regardless of where it is or what it contains. Interaction traces
would provide some diffentiation, but what we'd really like is to make it
possible for an area of gopherspace to reflect something of its contents,
and something about those who construct it, maintain it, and frequent it.
Sense of place could be intitially supported by allowing server administrators
control over visual characteristics of items on their servers, and allowing
users to customize the appearance of individual items and directories by
adding notes or graffitti.
Providing a sense of place would benefit both administrators and users.
Server administrators would like to be able to customize their areas, but
their opportunities for doing this within the constraints of alist of names
and icons are quite limited. Supporting customization by administrators
is important because many Gopher servers are maintained by volunteers with
little or no institutional support or recognition; anything which can increase
the gratification administrators receive from their efforts will ultimately
benefit gopherspace as a whole. Users too would benefit from being able
to customize items in gopherspace: it would transforms Gopherspace from
something 'owned' by server administrators to a more public, collectively
shaped sort of space. More generally, as areas with gopherspace develop
their own sense of place, it seems likely that users would begin to recognize
places and regions; and, while users may still get lost, they may begin
to develop a sense for where they're lost.
Transfrming Information Spaces into Social Spaces
Very often, the perfered method for obtaining information is to ask
someone else; turning to an information source -- either physical or electronic
-- is often a last resort. In fact, sometimes people search for documents
only as pointers to their authors to whom they then direct their queries
(Erickson & Salomon, 1991). It is also true that much information access
is part of a larger, often collaborative task: people seek information because
they are trying to solve a problem, test a theory, understand a concept,
or communicate their understanding to others. All of this suggests that
there is little reason to segregate information access from other activities.
The increasing popularity of MUDs and MUSEs for supporting conversation,
teaching, and other gro up activities demonstrates that virtual spaces --
even those that are purely textual -- can serve as frameworks for a broad
range of collaborative activities (see Curtis, 1992; Bruckman, 1992; Bruckman
& Resnick, 1993; Erickson, 1993; Rose, 1994). Indeed, some MUDs are
beginning to provide access to Internet Gopher from within their environs
(e.g., Masinter & Ostrom, 1993). We propose to purse the same end from
a different direction, and to explore expanding gopherspace into a social
space that can support a broad range of activities that complement information
broswing and access.
Initial Design Criteria
The problems and prospects we have just covered map into a few general design
criteria.
Richer Representations
Thre is a need for richer representations for servers, directories,
and documents. The lost-in-space problem suggests the need for a high level
overview of gopherspace. The grouping problem indicates the need for a representation
of collections of documents that can reflect their similarities and differences
along a variety of dimensions. Similarly, richer representations for individual
documents would alleviate the browsing problem. Finally, the expansion of
gopherspace into a social space requires representations that can provide
a medium within which human-human interaction can occur.
Dynamic Representations.
Representations need to be able to change over time. Sense of place
requires representations that can be customized by administrators and end
users, and interaction traces require representations able to reflect the
interaction history of individual documents and collections of documents.
Metainformation.
All of these changes to the representations in Gopherspace require
that meta-information about servers, directories, and documents be made
available via the Gopher protocol. The prospects of interaction traces,
customization, and social spaces also involve meta-information, but meta-information
that is external to gopherspace: it is applied by users, or inferred by
the system based on user interaction.
Backward Compatibility
There is a final, very important criterion not suggested by the preceding
discussion. It is important to recognize that there is a large installed
base of Gopher servers and clients, and a community of administrators and
end users--Gopher is as much a social phenomenon as a technology. Backward
compatibility of any new client is essential for acceptance. It will be
impossible to change all of gopherspace overnight, so any new client must
handle both servers that have stored additional information (e.g., about
relative clustering of items in document collections) and ancient unmodified
servers. This must be done without stepping outside the new user interface
metaphor.
First, note that 3-D space as a metaphor for information is nothing new;
it is deeply embedded in our language (e.g., Lakoff & Johnson, 1980).
Without thinking about it, people use spatial and object-centered terms
for discussing abstract concepts. We speak of getting overviews
, seeing things from different perspectives , and grasping
new ideas. Providing a 3-D spatial interface is, in part, just providing
a concrete embodiment of language we already use.
Furthermore, a 3-D space is a very powerful representation system; it provides
a flexibile conceptual framework with which many variables can be integrated.
Relationships between items can be shown by spatial proximity. Interaction
traces can be represented as physical wear on objects in the space. Sound
can be used to indicate activity going on within the space, but outside
the view of the user. 3-D space can provide a framework within which users
can interact with one another. 3-D representations also implicitly include
two representations: a surround view when you are "in" the 3-D
space that is suitable, for example, for viewing collections of documents;
and a bird's eye view that provides an overview of the structure of the
space. The fact that the same conceptual model provides two different representations
that are connected in a well understood way (and that permit the transition
from one to another to be shown) is very useful.
Another advantage of 3-D space is that it is familiar. People understand
a lot about space. For example, they know that any 3-D object has other
sides that aren't immediately visible, and they have expectations about
what to do to get a view of those other sides. They are familiar with manipulating
and interacting with objects in 3-D space. People are familiar with navigating
through space (since people have little experience flying, we intend to
implement constrained navigation, so that the user experience is something
like driving a car). Besides, it'll be loads of fun..
When we are ready to expand gopherspace into a social space, 3-D spaces
provide a natural way of supporting interaction between people. As human
beings, we understand a lot about the social conventions of spaces.We understand
the distinction between public and private spaces; we know that you have
to pay to enter some spaces at which time you gain temporary rights to that
space. We understand that particular activities, people, rituals, and behaviors
are associated with particular types of spaces. We have spent out lives
learning to recognize spatial cues: what entrances look like, what a bulletin
board is, where you are likely to find a you-are-here map, and so on. All
this knowledge can be leveraged in a 3-D spatial metaphor.
Finally, there is a rich vein of knowledge about how the design of 3-D spaces
that is ready to be tapped. Disiciplines such as architecture, landscape
design, and urban design have a sophisticated undertanding of the issues
that arise in spatial design (e.g., Lynch, 1976; Hough, 1990; Alexander,
1987; Southworth, 1969) that may be applied to the design of virtual environments.
In addition, many researchers have studied ways in which spatial environments
support (or inhibit) human-human interaction (e.g., Whyte, 1988). Finally,
it is interesting to note that urban design, in particular, has striking
parallels with the situation faced in designing large, distributed information
spaces: in both cases the designer must create a framework that is sufficiently
robust that third parties can come along and add unforeseen things without
destroying the coherence and consistency of the design.
In this section we sketch out the preliminary design for the interface,
with some comments on the rationale for various decisions. It is important
to emphasize that this is the starting point, not the ending point. In general,
the preliminary design is based on a combination of analysis and intuition;
at this point, no testing or prototyping has been done, with the exception
of a few mock-ups of 3-D icons and neighborhoods generated to facilitate
discussion of how to design legible 3-D icons, and how to support navigation
among them. We take it as a certainty that as we proceed both implementation
constraints and feedback from prospective users will shape the design in
major and unforeseen ways. We expect the implementation of the design will
proceed through (at least) two stages: first, we will focus on creating
a 3-D information space; only later will we integrate the functionality
necessary for supporting social interaction.
For expository purposes we will describe the preliminary design in terms
of three levels of representation -- the overview, the neighborhood, and
the individual item. We will begin with the neighborhood, the representation
for the collection of items with which the user is interacting. Next we
will examine some details of the 3-D icons used to represent individual
items. Then we'll look at the representations which provide the overviews
of regions and of gopherspace as a whole. Finally we will describe interactions
in gopherspace, including: opening documents, navigating around a neighborhood,
moving from one neighborhood to another, and user-user interaction.
The Neighborhood
The neighborhood is the representation of the collection of items
with which the user is interacting. Neighborhoods are either constructed
by server administrators (as a directory in the the server's file hierarchy)
or generated by search engines in response to a user-entered query.
Figure 2. The circular "Stonehenge" icon arrangement.
The Arrangement of the Icons
We explored two representations of neighborhoods: circles and 'streets'.
Circular arrangements of items have a number of strengths. First, the user
will generally have a straight on view of the fronts of a couple of 3-D
icons, which is valuable because the fronts of these icons will generally
contain details of their content. Since the user enters the neighborhood
near the center of the circle of icons, the user is always going to be looking
at something and it is difficult to drive off into limbo. A second useful
property of a circular arrangement is that it is easy for the user to understand:
the user can quickly get an idea of how many icons are in the neighborhood
(based on the density of icons and the radius of the circle). The circular
arrangement of icons defines an enclosed space that may be used as a collective
gathering space for users. The circular arrangement also defines a center
point, at which we will place a 3-D 'kiosk' icon that will function as the
user's link back to the previous neighborhood, and as a sort of information
desk for the neighborhood. If we allow for display of user-entered comments
from the people who have visited this directory this should also appear
on the kiosk.
The street metaphor was investigated and rejected because the user is either
facing down the axis of the street and has an oblique view of most of the
faces of the icons, or is facing one side of the street and is required
to turn fully around to view the next closest icon. It also may be difficult
for users to tell how long a street is, and unless the street is short,
it really has no center or natural gathering point. Finally, simple mock-ups
of streets in a 3-D modeling program resulted in arrangements that felt
very claustrophobic, since fairly large 3-D icons were necessary for information
display purposes.
A variant of the circular arrangement of items is the spiral.We intend to
use the spiral arrangement for collections of icons generated by search
engines in response to user queries. Formally, the spiral has a nice family
resemblance to the circular arrangement so that it too defines an enclosed
area with a center point; at the same time, its greater openness and dynamicism
seems a good reflection of the transitory nature of most queries. Also,
a spiral has directionality, and thus provides a natural ordering within
which the relevance of items to the query can be reflected. That is, the
more relevant the items, the closer they are to the root of the query; and,
more generally, a search that returns a large number of very relevant items
will have a tightly coiled spiral, whereas one with few relevant items will
have a very loose spiral.
Figure 3. Results of a search arranged in spiral fashion.
Sound
We intend to support the use of sound as part of a representation for
a neighborhood. Sound is valuable because it can maintain the sense of being
in a particular place, even when the place is too big or complex to be shown
all at once. Server administrators should be able to define a digitized
sound for sound-savvy clients to play while the user is within the directory...
hopefully unobtrusive sounds similar to some of Brian Eno's ambient music.
Sound can play a variety of other roles. It may be used to reflect activity
of other users in the same or nearby neighborhoods (Gaver, et al, 1991;
Cohen, 1993). Variations in its timbre could be used to give hints as to
the size of the neighborhood (Gaver, 1989). In the physical world, sounds
also play an importnat role in supporting the feeling of a sense of place
(Southworth, 1969).
To make sound a common part of all 3-D space will require synthesizing sounds
for gopher servers that do not provide a server-defined sound. Having the
client software generate an ambient wind sound attenuated by the number
(and type) of objects in the scene is probably the best approach creating
sounds for servers that do not have their own. By making the attenuation
of the ambient wind sound depend on the objects in the local space we can
get automatically create variation in tone and timbre.
Interaction Traces
If usage information is available from the server, footprints (or some
sort of dirt on the ground) can be used to show which of the items in the
neighborhood are the most popular.This is like the worn marks on subway
platforms in New York. You can predict where the doors of the subway train
will be when it stops by looking at the worn spots on the platform. The
same sort of cue can be used in a neighborhood to show users who want to
follow the beaten path, where that path lies.
The 3-D Icons
In our design, 3-D icons can vary along three dimensions: form,
surface characteristics (color and texture), and information about the icon's
content (name and proxy).
The Forms of 3-D Icons
The basic form of a 3-D icon is an approximately rectangular box that
represents the type of the object. Box-like icons are attractive since they
keep the scene rendering requirements to a minimum by keeping the number
of polygons down and simplifying hidden surface removal. Box-like objects
also provide plenty of space to map textures, draw items names and other
information, and can look vaguely like buildings that people encounter in
life.
The form of the icon indicates the type of object it represents: the constraints
on the icons' forms are that the icon's type should be recognizable from
any direction (and ideally from a distance), that most icons have a large,
flat surface area on which its proxy may be displayed, and that the form
be relatively simple so that large directories displayed by clients on low-end
machines not take excessively long to render. Figures 4 through 9 show initial
passes on the forms for types of icons.
Figure 4. Document icon.
Figure 5. Gateway icon
Figure 6. Search engine icon
Figure 7. Interactive session icon
Figure 8. Person icon
Figure 9. Kiosk icon
The objects represented by the icons are mostly analogous to types of icons
in gopherspace today (documents, search engines, interactive sessions, and
gateways to other directories). Two new types are kiosk and person icons:
kiosks have been described in the preceding section; person icons are place
holders for icons which will represent users when the environment is able
to support synchronous social interaction.
Surface Characteristics of Icons
Surface characteristics of icons include color and texture. At the
moment our intent is to use color as redundant information, to indicate
the type of the icon. The advantage of this is that it will allow types
to be distinguished in overviews. Texture is a variable the server administrators
will be able to customize; they will be able to define the texture as a
bitmap that will be painted onto the surface of the icon, and onto which
other information (e.g. proxies) will be mapped).
Information about the Content of the Icon
The face of the 3-D icon is divided into areas used for the name of
the item and the proxy. The title of the item is written across the top:
on document icons there is a ridge wrapped around the icon about 80% of
the way up the icon where the title is written; other icons have the title
in the same location but without the ridge. Below the title is where the
proxy is displayed. The proxy reflects something of the content of the object
represented for the icon: for a picture, it might contain a thumb-nail sketch;
for a text document it might contain key words; for a new neighborhood,
it might contain an indication of the neighborhood's size. Researchers have
suggested a number of possiblities for proxies which would be interestingto
explore in this context (Houde, et al. 1993; Wroblewski, et al., 1994).
As the user approaches a 3-D icon, the amount of information displayed on
the icon changes since there is more screen real estate to use for display
and since the user is presumably more interested in the item. From a long
distance, only the general outline and color of the icon is readily discernible.
At middle distance the texture map and name of the icon are visible. At
close range proxies for the information within the icon become visible;
as the user approaches even closer to an icon, more information might become
available.
What the proxies are will vary depending on the type of object. Directory
icons may show a rough rendering of the content of the directory (i.e. the
number and arrangement of the icons contained in that directory). Document
proxies are probably the first part of the document or a diskette icon to
show that the contents is a binary file. The document proxy referring to
a Quicktime video might contain the poster view of the video. Sounds could
also be used as part of the proxy of an item, perhaps brought into play
when a user comes very near the icon: a directory's proxy might use sound
to give a hint of what the new neighborhood is like before the user enters
it; a document's proxy might use whispered text-to-speech to provide more
detail about a document's content; and of course icons for audio and video
files could just play part of the soundtrack.
Representing Overviews of Gopherspace
The purpose of an overview is to give users a glimpse of the larger
context in which they are situated. In the current design, all overviews
take the form of 2-D maps, which can be brought up in a window separate
from that containing the 3-D view. There are three sorts of overviews that
seem likely to be of use: an overview of the neighborhood; an overview of
the local region of gopherspace; and an overview of all of gopherspace.
Overview of the Neighborhood
The collection of items will either be the current directory or the
results of the most recent search. The overviews will 2-D projections of
the neighborhood as seen from overhead: that is, either the "stonehenge"
arrangement or a spiral of icons. Colors will enable users to distinguish
the type of the icon (since, in a 2-D projection this will probably not
be readable from the icon's form).The specific ways in which these overviews
will be used is yet to be determined, but such views could obviously provide
the user with a you-are-here orientation, and a way of quickly assessing
the size and relative proportion of icon types in a particular collection.
A miniature version of this overview could also be used as a proxy for a
gateway icon.
Overview of the Region
We haven't decided precisely what a region should be. We will take
as our working definition that a region is comprised of the current neighborhood,
neighborhoods directly connected to that neighborhood by gateways, and (perhaps)
neighborhoods connected to those. An alternate possiblity is to define the
region as the server the user is currently on. Note that since any of the
gateways may be to directories on different servers, the two definitions
of a region are quite distinct, rather than the second being a superset
of the first. One consequence of this is that the first type of neighborhood
will have to be computed on the fly by querying other gopher servers for
the structures of relevant (i.e. connected) neighborhoods. Given a definition
of a region, the region overview will be generated in the same way as that
for the individual neighborhood (see figure 10 for an abbreviated example).
Overview of Gopherspace
Finally, an overview of all (or at least large portions) of gopherspace
would be useful. However there are two practical problems. First, it is
difficult to identify the contents of gopherspace. Because Gopher is a distributed
system without a compulsory server registration, there is no global list
of all servers in gopherspace. Maintaining such a list is a daunting prospect
given the growth in number of gopher servers (3400 in September 1993, 4800
in December 1993, 6700 in March 1994). The second problem is that the contents
of gopherspace are constantly changing: new servers come on line, other
servers go off line, directories are added, deleted or reordered, and items
are added or deleted. The most feasible alternative is to encourage individuals
within the Gopher community to use software to generate maps, which could
be made available on map servers for those who wish them. Although it may
strike the reader as a case of wishful thinking, similar efforts have produced
gopher-related tools like Veronica and Archie.
Assuming the existence of a relatively up-to-date list of the contents of
gopherspace, the question of how to represent the overview of gopherspace
remains to be dealt with. Given the magnitude of Gopherspace--thousands
of servers, millions of items--representing it (or even significant subsets
of it) with miniature 2-D projects of the neighborhood is out of the question.
Even were this possible, representing a dynamically growing space using
a Euclidian plane is problematic: when new servers, neighborhoods, or items
are added, the new items must be put somewhere, and this will often result
in distorting the structure of the overview. This is a problem insofar as
one of the purposes of an overview is to provide a consistent frame of reference
for the user.
A solution that addresses both of these problems is to use a more symbolic
overview, projected on a frame of reference that is independent of the content
of gopherspace. The obvious candidate is a map of the physical world. This
has three advantages. First, people are relatively familiar with the structure
of the physical world. The advantage here is simply one of mnemonics: people
have a better chance of remembering where they saw something interesting
if they can associate it with a known physical locale (in fact an ancient
mnemonic technique known as the method of loci is based on this). The second
advantage of a map of the physical world is that although Gopher servers
can, in principle,be located anywhere, in fact they are often located in
physical proximity to the groups the maintain them. Thus, the relationship
between real world location and the type of information server found there
is not wholly arbitrary. Thus, someone interested in information about visiting
Japan might well want to look for Gopher servers in Tokyo; someone interested
in Artificial Intelligence would be well advised to search MIT, CMU,and
Stanford for servers; someone interested in Blues music might try New Orleans
or the Smithsonian. The third advantage of a map-based overview is simply
that we believe people will like it. It will emphasize their ability to
virtually travel across the world, finding information in various locales,
and will give people a sense of power and excitment.
In the absence of programmatically generated overviews of gopherspace, one
initial step would be to have the client construct overviews of the areas
of gopherspace that the user has visited. While this will be useful only
for seeing where one has been, and not for aiding exploration of new areas
of gopherspace, it is better than nothing. And this would provide placeholders
in both the user interface and protocols for more comprehensive overview
information that may eventually become available.
Interaction in Gopherspace
In this section, we briefly summarize the sorts of interactions that can
occur in gopherspace.
Navigating within a Neighborhood
Most people are familiar with navigating 3-D spaces since this is something
they do everyday of their lives to get from one place to another. On the
other hand, most people have little experience flying through space, so
by limiting the number of options the user has for flying into limbo, we
can make the user experience similar to some of the better arcade style
games (like Spectre). By limiting the user's navigational controls to forward
and back turn left, turn right we can make it easy to learn how to use the
interface. By limiting the height of the 3-D icons, we can ensure that the
icon's proxy will usually fit within the user's field of view, and thus
we needn't worry about providing ways to look up or down, or left or right.
Interaction Details: Steering and Opening
We have not yet decided on how to carry out interaction at the most
basic level. It will be desirable to open (and therefore to select items);
and it will be necessary to start, stop, and change the direction of movement
in Gopherspace. One possiblity is to ignore selection, and to allow items
to be opened by driving into them (O'Sullivan, 1994). Alternatively, we
can allow users to navigate around the space, and then select items and
open them. In this case, either screen controls will be needed for one or
both options, or use of the command key with the mouse will be necessary
to disambiguate between the steering and opening modes. Onscreen controls
seem to be the better option, both in terms of ease of learning and use,
and because they could support a wider range of low level operations. For
example, a single click might be used to choose an option to scan the neighborhood,
taking the user on a circular path around the inner periphery of a neighborhood
-- if clicks, and click-and-holds were used to steer, this could quickly
become physically tiring).
In most cases, opening an item would result in a new window being displayed
on the screen. If the item is a document, the window would of course contain
the contents of the document. If the item was an interactive session or
search engine, it would contain whatever prompts are generated by session
host or search engine. If the item is a gateway to a neighborhood, 'opening'
the gateway results in a transition to the new neighborhood. If the item
is the kiosk icon in the center of a neighborhood, it returns the user to
the previous neighborhood.
Transition between Neighborhoods
When the user 'opens' a gateway, visual and sonic feedback should be
used to make it clear to the user they are traveling somewhere else; this
is a rough equivalent of the zoomrect transition used on the Macintosh when
an icon is opened. This happens when a user enters a gateway or kiosk, or
executes a search on a search engine. If we handle this properly, it should
give the user something to look at while the client software sets up and
renders the next neighborhood the user will view.
For the neighborhood-to-neighborhood transition, the goals is to produce
the experience of entering the icon, emerging into an open space, and zooming
into the new neighborhood (shown in figure 12). The experience would be
something like a roller-coaster ride, as the user follows a predetermined
course and cannot steer. If the neighborhood is on a different information
server, the first part of the 'ride' might be through an abstract grid,
representing a transistion between servers. The amount of time spent in
flight depends on how long the software needs to fetch the information from
the appropriate gopher server and render the next neighborhood. Once the
next neighborhood is ready to be displayed to the user the flight over the
grid ends with an approach over (and then down into) the new neighborhood.
The user can get an idea of the general layout of the neighborhood during
the approach and landing.
Figure 12: Trajectory between neighborhoods.
The idea behind this trajectory is to give the user a sensation of high-speed
travel travel over an anonymous looking grid, culminating with a slow approach
to the new neighborhood. It is important that the approach to the new neighborhood
allows the user see the general arrangement of the neighborhood so that
they can get a sense of the number and type of items in it. To make this
visible, the user's trajectory is one of swooping down from above (like
a plane landing). The user is deposited near the central kiosk facing so
that both a part of the kiosk and some of the items in the neighborhood
are visible (figure 13).
Figure 13. Initial view on entering a new neighborhood
Interacting with Other Users
The details of this remain to be worked out. However, as a very rough
first pass, we'll assume that interaction occurs in a MUD-like fashion using
MUD conventions, with a separate window appearing to support textual dialogs
between different users in the same neighborhood (see Curtis, 1992; Bruckman
& Resnik, 1993; Erickson, 1993; Rose, 1994 ).
System Architecture, Protocols, and Zoning
The 3-D user interface described here will be rendered and managed entirely
by the client software. No changes to Gopher servers will be required, at
least for the information environment phase of the implementation. Client
software that can synthesize the spatial scene from current gopher directory
and item meta-information allows us maintain compatibility with all of the
current gopher servers. A happy side effect of this approach is that server
and network bandwidth demands are minimized since we do not require servers
to render scenes and ship bitmaps of the scenes over the network. Backward
compatibility issues are also addressed by using the Gopher+ protocol's
item attributes to hold meta-information. Gopher+ item attributes provide
an open-ended, extensible way of associating arbitrary meta-information
with items and directories, and methods of accepting information sent from
the client, so the user interface we propose will not require a new protocol.
An exception to this client-centered approach arises when we allow server
administrators to control over the appearance of servers they administer.
By default, the Gopher client generates the geometry and layout of the neighborhood
within the user's computer, but sense of place requires that we provide
administrators with control over things like the layout within the neighborhood,
sound, textures mapped onto icons, and perhaps icon geometry. We have reached
no final decision on what to do, but our plan for the initial implmentation
is to send the client formulae for server-specific textures and sounds (as
Gopher+ item attributes), which the client can then recognize. Sounds and
textures (bitmaps) are easy to generate and carry a lot of information;
most server administrators do not have 3-D geometry tools needed to facilitate
modifying icon geometries. Eventually we would like to allow mapping Quicktime
or MPEG video onto the icons for a real Las Vegas-style user experience.
An open question is how much control to give server administrators over
the look of their areas. On the one hand, server administrators could be
allowed to design their own 3-D icons; they could define the icon geometry,
which would then be shpped to the client for rendering. However, there are
several possible problems here. Two of the most serious have to do with
efficiency and consistency. For example, ornate designs might take too much
processing power to render in an acceptable time on all platforms. Once
server administrators can create their own icons, clients must take steps
to protect themselves from badly designed icons; the clients might have
to employ local zoning restrictions by refusing to render icons with excessive
numbers of polygons (or non-convex polyhedra, or other items beyond the
limits of the client's 3-D rendering engine). Similarly, once the server
administrator has control over the layout of the icons in the neighborhood,
clients will need to employ their own local zoning ordinances to check the
reasonableness of the layout (disallowing overlapping polyhedra, for instance).
A more serious problem is that of consistency: users would presumably like
to be able to recognize particular types of documents, regardless of what
server they're on. Users entering a new neighborhood that happens to be
on a different server should not have to stop and figure out what a document
icon looks like in this neighborhood; there should be a family
resemblance that users can rely on. One solution is to allow the form, or
a portion of their form (e.g., the tops of the icons) of the icon to stay
constant throughout gopherspace. This would allow users to assume that if
the icon has a slanted top, is is a search engine. Also, the basic box shape
will probably be strongly mandated since the client expects to be able to
map texture, names and the document's proxy onto the surface of the icons.
As this is a report of work in progress, we have no real conclusions, as
yet.
It is worth noting that even in these earliest stages of design, we have
had to deal with issues that lie outside the realm of the disciplines traditionally
involved in interface design.
What forms should 3-D icons have so that they are both simple and yet recognizable
from many directions?
What types of spatial layouts can help people remain oriented in a large
space? What sort of layouts are legible both from the inside and from the
outside?
What icon and layout geometries are most invariant over scales, allowing
them to be recognized from very close, and very far away?
How rapidly should a transition into a new spatial layout occur, so that
the user can take in enough information to be oriented, but avoid boredom?
How can we simultaneously support the sorts of regional and individual variation
of appearance that makes real places rich and inviting, without sacrificing
the core of consistancy that that allows people to stay oriented and comfortable
in real spaces?
The next step is to implement a working prototype on a PowerPC. As of this
writing, a very crude prototype, complete with rendering engine, is running.
This paper is based on dreams and discussions that have been going on within
part of the Gopher software development team (Paul Lindner, Farhad Anklesaria,
David Johnson, Neophytos Iacovou) at the University of Minnesota over the
last two years. We have also learned from the work on YORB, carried out
by Dan O'Sullivan and his colleagues in the New York University School of
Interactive Telecommunications.
Alexander, C., Neis, H., Anninou, A., & King, I. (1987) A New
Theory of Urban Design . New York: Oxford University Press.
Bruckman, A. (1992 ) Identity Workshop: Emergent Social and Psychological
Phenomena in Text-Based Virtual Reality. Unpublished manuscript, 1992. (Available
via anonymous FTP from media-lab.mit.edu, /pub/ MediaMOO/Papers/ identity-workshop.)
Bruckman, A & Resnick, M. (1993 ) Virtual Professional Community: Results
from the MediaMOO Project. Presented at the Third International Conference
on Cyberspace, May 1993. (Available via anonymous FTP from media-lab.mit.edu:/pub/MediaMOO/Papers/
MediaMOO-3cyber-conf.)
Cohen, J. (1993) Monitoring Background Activities. Proceedings of
the First International Conference on Auditory Display . Santa Fe,
NM.
Curtis, P. (1992) Mudding: Social Phenomena in Text-Based Virtual Realities.
Proceedings of DIAC '92 . Available via anonymous FTP from
parcftp.xerox.com, pub/MOO/papers /DIAC92.
Erickson, Thomas. (1993) "From Interface
to Interplace: The Spatial Environment as a Medium for Interaction."
Proceedings of the European Conference on Spatial Information Theory.
Heidelberg: Springer-Verlag.
Erickson, T. & Salomon, G., (1991) Designing a Desktop Information System:
Observations and Issues. Human Factors in Computing Systems: the Proceedings
of CHI '91. ACM Press.
Gaver, W. W. (1989) The Sonic Finder: An Interface that Uses Auditory Icons.
Journal of Human-Computer Interaction , 4:1. Lawrence Erlbaum
Associates.
Gaver, W. W., O'Shea, T. & Smith, R. B. (1991) Effective Sounds in Complex
Systems: The ARKola Simulation. In Human Factors in Computing Systems:
the Proceedings of CHI '91 . Austin,TX: ACM Press.
Houde ,S., Salomon ,G. (1993 ) Working Towards Rich & Flexible File
Representations, in
Adjunct Proceedings of INTERCHI'93 , Amsterdam, The Netherlands.
April 24-29.
Hill, W. C., Hollan, J. D., Wroblewski, D. A., & McCandless, T. P. (1991)
"Edit Wear and Read Wear." In Human Factors in Computing
Systems: the Proceedings of CHI '91 . Austin,TX: ACM Press.
Hough, M. (1990 ) Out of Place . New Haven: Yale University
Press.
Lakoff, G. & Johnson, M. (1980) Metaphors We Live By .
The University of Chicago Press.
Lynch, K. (1976) Managing the Sense of a Region . Cambridge:
The MIT Press.
Masinter, L., and E. Ostrom. (19xx) "Collaborative Information Retrieval:
Gopher from MOO," Proceedings of INET '93.
O'Sullivan, D. (1994). Yorb: An Electronic Neighborhood. Personal communication
and unpublished videotape.
Rose, D. "MUDs: (1994) Virtual Environments on the Net." Unpublished
manuscript. Available from rose@apple.com).
Southworth, M. (1969) The Sonic Environment of Cities. Environment
and Behavior, June.
Whyte, W. H. (1988 ) City: Return to the Center . New York:
Doubleday.
Wroblewski, D. A., McCandless, T. P. & Hill, W. C. (1994). Advertisements,
Proxies, and Wear: Three Methods for Feedback in Interactive Systems. Natural
Dialogue and Interactive Student Modeling[tentative title]. Heidelberg:
Springer-Verlag, in preparation.
[Tom's Home Page]
[Professional] [Life,
Fun, &c] [Tell Me...]
© Copyright 1994 by Mark McCahill and Thomas Erickson. All Rights Reserved.