W. Keith Edwards 36850 Georgia Tech Station Atlanta, GA 30332 (404) 607-1323 home / (404) 894-6266 (office) Internet: keith.edwards@cc.gatech.edu Education BS, Information and Computer Science, Georgia Tech, 1989 MS, Information and Computer Science, Georgia Tech, 1991 Currently in PhD program in Computer Science at Georgia Tech Dissertation: "Collaboration Support Systems for Environmental Data Sharing" Employment Research Assistant, Multimedia Computing Group, Georgia Tech, Atlanta, GA June 1988 -- Present Worked on a number of projects in the area of multimedia and collaborative interfaces. Developed Intermezzo, a toolkit and run-time system to support the development of collaborative multi-user applications. Designed and implemeted an extensible multimedia electronic mail system called Montage. Helped develop a system which could capture information from X Windows-based applications and then map the graphical output into an auditory form to provide access to GUIs to blind or visually disabled users. Involved with several other projects related to audio and video conferencing, computer-supported collaboration, workstation support for video, and digital sound manipulation. Summer Research Intern, SunSoft., Mountain View, CA June 1992 -- September 1992 Developed a session management service for collaborative, multi-user applications. The session management service handles the conference creation, joining, and browsing aspects of multi-user software. This system was written in C++. Also developed an interpreted interface to a multimedia toolkit called MAK++. This system was written using TCL and C++. Summer Research Intern, Sun Microsystems Laboratories, Inc., Mountain View, CA June 1991 -- September 1991 Designed and implemented a C++ toolkit called MAK++ which supports the development of distributed multimedia applications. The toolkit provides network transparency and extensibility and supports audio, video, and simple signal processing applications. MAK++ was used internally by Sun Labs to produce several proof-of-concept applications such as workstation-based conferencing systems. Consultant, NeXT Computer, Inc., Atlanta, GA February 1990 -- June 1991 Employed by NeXT as a consultant to provide development support to NeXT users on the Georgia Tech campus. Instructor, Georgia Tech Educational Extension, Atlanta, GA March 1991 Developed a three-day course on programming the X Window System in the Unix environment. Course dealt with all levels of X programming and covered fundamentals of the design and usage of the X Window System. Consultant, Sales Technologies, Inc., Atlanta, GA September 1990 Developed and presented a 24-hour course on programming in the X Window System. The course covered applications development at the levels of Xlib, the Xt Intrinsics, and Widget programming. Consultant, BellSouth Information Systems, Atlanta, GA September 1989 -- February 1990 Provided design and implementation assistance for a frontend to a distributed database application. The system was implemented on VAX workstations running X11 and acting as a frontend to a remote IBM database containing the Yellow Pages phonebook account information. The project involved significant specification, design, and implementation work. Summer Research Intern, Olivetti Research Center, Menlo Park, CA June 1989 -- September 1989 Worked on the development of the VOX audio server, a system for managing audio resources in a multimedia workstation environment based on the Mach operating system. Work involved extending the VOX server to add runtime configurability, support for generic audio classes, and enhancing the interserver routing and communications mechanisms. Also wrote an n-way voice teleconferencing application based on VOX. Consultant, SecureWare, Atlanta, GA April 1989 -- June 1989 Consulted on a project to develop a detailed design document for the X Window System as a part of SecureWare's proposal to the National Computer Security Council for a B1 secure version of Apple's version of Unix, A/UX. Work included producing technical documentation for the Xlib library interface and various X clients, especially window managers. Consultant, Lockheed Aerospace Corporation, Atlanta, GA June 1988 -- December 1989 Consulted on a project to develop an X Window-based automated battle-damage assessment and repair system for aircraft. This system would allow ground personnel to rapidly make damage assessments through the use of a graphical user interface. The system would then calculate subsurface damage and suggest appropriate repair actions. Teaching Assistant, School of Information and Computer Science, Georgia Tech September 1987 -- December 1988 Taught assembly language programming for VAX architecture machines. Responsible for preparing and presenting lectures, and design and grading lab assignments and exams. Other Projects o Worked with the Networking Group at Georgia Tech to develop an Internet Protocol (IP) based protocol for the transmission of digital voice streams efficiently. o Worked on a team to develop an optimizing backend for a compiler for the Motorola 56000 Digital Signal Processor. The backend was designed to work with the Amsterdam Compiler Kit. o Worked with researchers in the School of Computer Science and the School of Psychology to construct an X-based experiment environment which allowed experimenters to construct user tasks rapidly. Subject performed tasks in the resulting environment and their performance could be measured with millisecond accuracy. o Designed and implemented an object-oriented toolkit for network applications designers written in C++. This toolkit allowed modern object-oriented methodologies to be applied to the normally arduous task of creating Unix networking code based on BSD sockets. o Worked with the Clouds Project, an ongoing research project at Georgia Tech concerned with developing a reliable distributed object-oriented operating system. Work dealt with the design and construction of a mechanisms for allowing Clouds remote procedure call invocations to be run under Unix, and low-level systems objects to provide a Unix emulation of Clouds. o Developed a system to allow inexperienced computer users to typeset the Georgia Tech Course Critique book. This involved the creation of a robust, easy-to-use shell to facilitate data entry and software to do the actual typesetting. Publications "A Framework for Information Sharing in Collaborative Applications," Doctoral Consortium, ACM Conference on Computer-Human Interaction, Boston, MA, 1994. "A Framework for Information Sharing in Collaborative Applications," Research Poster Presentation, ACM Conference on Computer-Human Interaction, Boston, MA, 1994. "Intermezzo Implementation Notes," Graphics, Visualization, & Usability Center Technical Report GIT-GVU-93-42, October 1993. "Metaphors for Nonvisual Computing", book chapter, to appear in Extraordinary Human-Computer Interaction, edited by Alistair Edwards. "The Mercator Project: A Nonvisual Interface to the X Window System," in The X Resource, Sebastopol, CA. Issue #7, 1993 (with Tom Rodriguez and Elizabeth D. Mynatt). "The Mercator Environment: A Nonvisual Interface to X Windows and Unix Workstations," Graphics, Visualization, & Usability Center Technical Report GIT-GVU-92-05, February, 1992 (with Elizabeth D. Mynatt). "The Design and Implementation of the Montage Multimedia Mail System," in Proceedings of IEEE Conference on Communications Software (TriComm), Chapel Hill, NC, April 17, 1991.` "The Design and Implementation of the Montage Multimedia Mail System," Georgia Tech Software Engineering Research Center Technical Report GIT-SERC-90-04, August 1990. "New Metaphors for Nonvisual Interfaces", Graphics, Visualization, & Usability Center Technical Report GIT-GVU-92-28, 1992 (with Elizabeth D. Mynatt). "Montage: An X-Based Multimedia Mail System," Graphics, Visualization, & Usability Center Technical Report GIT-GVU-92-29, October 1992. "Mapping GUIs to Auditory Interfaces," in Proceedings of ACM Symposium on User Interface Software and Technology (UIST) 1992 (with Elizabeth D. Mynatt). "Runtime Translation of X Interfaces to Support Visually-Impaired Users", in Proceedings of the 7th Annual X Technical Conference, Boston, MA, January 18-20, 1993 (with Tom Rodriguez). "A Session Management Service for Collaborative Applications," Sun Microsystems Laboratories internal technical report, August 1992. "The Multimedia Applications Kit/C++," Sun Microsystems Laboratories internal technical report, August 1991.