Curriculum Vita (CV)
President and Principal Consultant
231 Moscow St.
San Francisco, CA 94112
Home, work, fax: (415) 586-5285
Yale University: 1970 - 1974
Major: Psychology (experimental)
Additional Studies: Computer Science
Stanford University: 1974 - 1979
Department: Psychology (developmental, experimental)
Additional Studies: Computer Science
Employment History (most recent first)
Aug, 2016 - present: University of San Francisco, Department of Computer Science
Position: Assistant Professor
Duties: Teach computer science courses, including Intro to Computer Science for CS Majors (Python programming), Intro to Computer Science for non-CS majors (App Inventor 2 programming), User Experience Design, and Senior Team Projects.
July, 1996 - present: UI Wizards, Inc., a product usability consulting firm
Position: President and Principal Consultant
Duties: Perform product usability design, evaluation, testing, and training for clients. Write software design books. Manage company.
November, 1994 - July, 1996: Sun Microsystems / SunSoft Developer Products (Menlo Park, CA)
Position: Staff Engineer, Human Interface
Duties: Designed and evaluated user interfaces for software programming tools. Educated software engineers about user-interface design issues and guidelines. Conducted usability testing. Helped manage a summer intern laboratory assistant.
June, 1993 - October, 1994: Sun Microsystems / First Person (Palo Alto)
Position: Staff Engineer, Human Interface
Duties: Responsible for usability of user interfaces for consumer electronics and interactive TV product prototypes that were precursors of Sun's Java product. Designed and evaluated user interfaces. Established and operated a usability testing lab. Conducted usability testing. Managed a laboratory assistant.
November, 1988 - June, 1993: Hewlett-Packard Laboratories (Palo Alto, CA)
Position: Member of Technical Staff, Software Technologies Laboratory
Duties: Human-computer interaction research. Member of a team developing an application-development environment for use by end-users as well as programmers. Member of a task-force on handheld computer-based appliances for non-technical consumers. Member of a project to develop systems to support people in businesses in working together over long distances.
March, 1987 - November, 1988: U S West Advanced Technologies (Denver)
Position: Member of Technical Staff, "Advanced User Interfaces" Group, Science and Technology Research Lab
Duties: User-studies using prototype systems to derive principles of user-interface design and to examine new user-interface technologies. Included research on user-interface modes and on proper design of information services and terminals for the general public. User-interface design consulting. Training programmers in principles of user-interface design.
March, 1984 - March, 1987: Xerox Information Systems (Sunnyvale, CA)
Position: Development Team Leader; User Interface Designer
Duties: Design and implementation on various projects related to enhancing the Star/ViewPoint office computing system for electronic publishing applications. Designed and led implementation of a Stylesheets facility for the ViewPoint document editor. User-interface designer for most of the ViewPoint 2.0 enhancements.
October, 1978 - February, 1984: Cromemco, Inc. (Mountain View, CA)
Position: Software Engineer and Engineer Manager
Duties: Designing and implementing applications software (word processing, statistical analysis, graphics), designing keyboards, developing user-interface standards, designing user-interface toolkits, writing documentation, managing software engineers, LISP support.
Summer, 1973 and 1974: Jet Propulsion Laboratories, Pasadena, CA
Duties: Software development for Viking and Mariner data analysis.
Honors and Awards
- Distinguished Member, Association for Computing Machinery (ACM), 2019.
- Recipient of ACM SIGCHI Lifetime Achievement Award, 2016.
- Elected to ACM SIGCHI Academy, January 2014.
- Erskine Fellow, Computer Science and Software Engineering Department, University of Canterbury, New Zealand, 2013.
- Distinguished Speaker, Association for Computing Machinery (ACM), 2011-2014.
- Erskine Fellow, Computer Science and Software Engineering Department, University of Canterbury, New Zealand, 2006.
Professional Committee Service
- Communications of the ACM Web Advisory Board, 2007-present.
- ACM SIGCHI U.S. Public Policy Committee, 2004-present.
- Board Chair, Computer Professionals for Social Responsibility, 1990-93.
- Stanford Center on Longevity, November 2018.
- Authors@Google: December 2017.
- Keynote and workshop, Interaction South America (ISA) 2016 conference, Santiago, Chile, Nov 2016.
- Opening Keynote, CHI New Zealand (CHINZ) conference, Christchurch, New Zealand, Nov 2013.
- Computer Science Department, University of Waikato, Hamilton, New Zealand, Sept 2013.
- ACM SIGCHI Bay Area Chapter (BayCHI): May 2013.
- Authors@Google: January 2013.
- Design Workshops: PM Storm Training, PM-China, Shanghai & Beijing, May 2012.
- North Bay Internet Society: Sebastapol, CA, May 2012.
- Stanford University, Computer Science Department: Stanford, CA, April 2012.
- Keynote and Workshop: 1st Product Manager Conference, PM-China, Shanghai & Beijing, Nov 2011.
- ACM SF Bay Area Chapter: Cupertino, CA, July 2011.
- Academy of Art University: San Francisco, CA, July 2011.
- Bay Area Editors Forum: San Francisco, CA, March 2011.
- Mills College, Computer Science and Psychology Departments: Oakland, CA, March 2011.
- Center for Technology Innovation, University of Wisconsin at Milwaukee: Milwaukee, WI, Jan 2005, April 2008, Jan 2011.
- Lawrence Berkeley National Labs, University of California at Berkeley: Berkeley, CA, Jan 2011.
- ACM SIGCHI Bay Area Chapter (BayCHI): July 2010.
- Opening Keynote: UX Prague 2010, Prague, Czech Republic, June 2010.
- Keynote: Expo:QA 2009, Madrid, Spain, Oct 2009.
- Usability NJ: Princeton, NJ, Feb 2009.
- Software Test & Performance 2009 Conference (STPcon 2009), San Mateo, CA, 2009.
- Opening Keynote: FutureTest 2009 Conference, NY, NY, 2009.
- Opening Keynote: Yggdrasil 2008 Conference, Lillehammer, Norway, 2008.
- Technical University of Berlin, Computer Science Department: Berlin, Germany, Nov 2008.
- User Experience Russia 2008 Conference (UXR 2008), Moscow, Russia, 2008.
- Usability Professionals Conference (UPA 2008), Baltimore, MD, 2008.
- Software Test & Performance 2008 Conference (STPcon 2008), San Mateo, CA, 2008.
- Computer Society of South Africa, Johannesburg, South Africa, 2008.
- University of South Africa, Pretoria, South Africa, 2008.
- ACM SIGCHI Bay Area Chapter (BayCHI): Nov 2007.
- Opening Keynote, CHI New Zealand (CHINZ) conference, Christchurch, New Zealand, July 2006.
- Stanford Linear Accellerator Center, Stanford University: Stanford, CA, June 2005.
- Opening Keynote, Society for Technical Communication Trans-Alpine Chapter 2004 conference, Vienna, Austria, 2004.
- Bay Area Editors Forum: San Francisco, CA, Nov 2004.
- Bay Area Editors Forum: San Francisco, CA, Sep 2004.
- ACM SIGCHI New York City Chapter (NYC-CHI): New York, NY, June 2004.
- STC-TAC Conference: Vienna Austria, Apr 2004.
- North Bay Multimedia Association Web SIG: Novato, CA, Apr 2003.
- PARC Forum, Palo Alto, CA, 2003.
- Opening Keynote, Winwriters 2003 Online Help conference, Seattle, WA, 2003.
- Computer Science Department, University of California, Berkeley, CA, 1999, 2000, 2002.
- Computer Science Department, Stanford University, CA, 1993, 1994, 1995, 1996, 1997, 2000, 2001, 2002, 2004, 2010, 2012, 2014.
- Computer Science Department, University of San Francisco, CA, 1996, 2000, 2002, 2004, 2010.
- Computer Science Department, Cal. State University, San Francisco, CA, 2001, 2002.
- Mathematics and Computer Science Department, Cal. State University, Hayward, CA, 2000, 2002.
- Computer Science Department, Mills College, Oakland, CA, 2001, 2002, 2011.
- Computer Science Department, McPherson College, KS, 1998.
- Computer Science Department, Bethel College, KS, 1998.
- Computer Science Department, Tabor College, KS, 1998.
- ACM SIGCHI'97 Conference, Atlanta, GA, 1997.
- Department of Informatik and Mathematik, University of Bremen, Germany, 1994.
- Department of Informatik and Mathematik, University of Paderborn, Germany, 1994.
- Psychology Department, University of Colorado, Boulder, 1987.
- Assistant Professor, Computer Science Department, University of San Francisco (August 2016–present).
- Visiting Lecturer, Computer Science and Software Engineering Department, University of Canterbury, New Zealand (Winter Semester 2013).
- Visiting Lecturer, Computer Science and Software Engineering Department, University of Canterbury, New Zealand (Winter Semester 2006).
- Visiting Assistant Professor, Math and Computer Science Department, Mills College (Spring 2003).
- Part-time lecturer, Computer Science Department, Stanford University (1997-1998).
- Teaching Assistant, Stanford University Psychology Department, 1974-1978.
Human-Computer Interaction, User Interface Design, User-Interface Frameworks and Components, Usability Testing, Statistics, Cognitive Psychology, Developmental Psychology.
Implementation & Prototyping Experience
- Programming languages: Java, C++, Mesa, C, LISP, Z-80 assembler, SAIL, APL, FORTRAN, BASIC.
- Web tools: HTML, CSS.
- Desktop UI tools: UIM/X, XDesigner, InterViews, Motif, Director, Symantec Visual Cafe.
- Wireframing tools: OmniGraffle, Photoshop, Word and Powerpoint graphics.