Past Projects: Mercator

 

The Mercator System was designed to provide transparent non-visual access to applications built using the X Window System.  By “transparent” I mean that the applications in use do not have to be rewritten to work with Mercator—any existing applications should work with the system without modification.  To provide this access to applications, there were two major problems that we had to overcome.  First, we needed a framework which would allow us to monitor, model, and translate the graphical interfaces of X Windows applications without modifying the applications.  Second, given these interface models, we needed to devise a methodology for translating the original graphical interfaces into non-visual ones—essentially mimicking the advantages of GUIs in a non-visual presentation.

We wound up building several versions of the system.  The first approaches used an X “pseudo-server” to monitor the X protocol stream between clients and servers.  Based on our experiences with these early efforts, we proposed a set of modifications to the standard X platform.  Many of these modifications have been released by the X Consortium as a part of the standard X distributions, starting in X11R6.

In 1995, the name of the system was changed to UltraSonix (to prevent us from stepping on the toes of an existing system called Mercator).  Development at Georgia Tech halted at the end of 1995, as the primary developers moved on to new jobs.  In 1996, a crew of intrepid hackers on the net got the source, and have been actively engaged in porting the system to new platforms (particularly Linux), removing dependencies on commercial software, and fixing bugs.

From day one, the project was a collaborative effort involving a good number of people.  The folks that worked on the system at Georgia Tech include:

Our sponsors were Sun Microsystems, the National Security Agency, and the NASA Marshall Space Flight Center.

While I was one of the principal developers of the system, and managed its development for the last year or so at Georgia Tech, I’m not involved in Mercator or accessibility work these days.   Thus, I can’t support the software, and don’t have a lot of time to answer questions about it.  The system is definitely “research-quality” software, so be forewarned.  If you’re interested in using it, your best bet is to hook up with the crew doing the port.  Their version of the software has advanced far beyond the original Georgia Tech version anyway.  Mark Novak of the Trace Center is coordinating this development effort.  The home page for the porting and development effort is here.  Brian Sellden, one of the primary Linux hackers working with the code, has a page with progress reports and other information here.

If you want the source code of the Georgia Tech version it’s available here.  This software is free for non-commercial use, but if you want to use it in a commercial product, bundle it with a commercial product, or make any money off it, you need to talk to the Office of Technology Licensing at Georgia Tech (call 404-894-9727 and ask for Kimberly Dunn).  The full licensing text is:

A pre-built binary for SPARCstations running Solaris 2.5.x is available here.  It’s in Sun package format, so you can just use pkgadd to install it.  A warning:  configuring the thing for actual use is a bit tricky; you probably shouldn’t just assume that you can use this code to get real work done.

The old Georgia Tech web page on Mercator was still around, here (last time I checked, anyway), although it’s terribly out of date.

The list of papers about Mercator is rather long.  Here’s the one’s I’ve been associated with:

“Mapping GUIs to Auditory Interfaces,” Elizabeth D. Mynatt and W. Keith Edwards, Proceedings of the ACM Symposium on User Interface Software and Technology (UIST), pp. 61-70, Monterey, CA, 1992.  PDF
The paper above is the canonical (and most cited) paper on the conceptual model behind Mercator, even though it describes a much earlier (and obsolete) version of the system architecture.
“An Architecture for Transforming Graphical Interfaces,” W. Keith Edwards and Elizabeth D. Mynatt, Proceedings of the ACM Symposium on User Interface Software and Technology (UIST), pp. 39-48, Marina del Rey, CA, November, 1994.  PDF
The paper above is a good source to cite for the architectural approach of transforming graphical interfaces, as it is a reasonably accurate overview of the way the system worked in its latest incarnation.
Metaphors for Nonvisual Computing (book chapter), Elizabeth D. Mynatt and W. Keith Edwards, in Extraordinary Human-Computer Interaction, Alistair D. N. Edwards, ed. Cambridge University Press, 1995.  PDF
“Access to Graphical User Interfaces, Not Graphical Screens,” W. Keith Edwards and Elizabeth D. Mynatt. Interactions, Volume 2.1, pp. 54-67, January, 1995.  (warning: the PDF file is a scan and is very large.) PDF
“A Remote Access Protocol for the X Window System,” W. Keith Edwards, Susan H. Liebeskind, Elizabeth D. Mynatt, and William D. Walker. The X Resource, issue #13, Winter, 1995. O’Reilly Publishers, Sebastopol, CA.  PDF
“The Mercator Project: A Nonvisual Interface to the X Window System,” W. Keith Edwards, Elizabeth D. Mynatt, and Tom Rodriguez. The X Resource , issue #7, Summer, 1993. O’Reilly Publishers, Sebastopol, CA.  PDF
“Providing Access to Graphical Interfaces, Not Graphical Screens,” W. Keith Edwards, Elizabeth D. Mynatt, and Kathryn Stockton. Proceedings of the ACM Conference on Assistive and Enabling Technology (ASSETS), pp. 47-54. Marina del Rey, CA, November, 1994.  PDF
“Mapping GUIs to Auditory Interfaces,” Elizabeth D. Mynatt and W. Keith Edwards, Proceedings of the ACM Symposium on User Interface Software and Technology (UIST), pp. 61-70, Monterey, CA, 1992.  PDF
“Runtime Translation of X Interfaces to Support Visually-Impaired Users,” W. Keith Edwards and Tom Rodriguez.  PDF

(For a more complete list of my papers, go here.)