The Evolution of the User Interface

CS100: The World of Computing
John Dougherty
Spring 2001


  1. Goals
  2. Definition of a User Interface
  3. People and Machines: Evolution
    1. programmer == designer == engineer == user
    2. batch mode to increase utilization
    3. time-sharing: an illusion of many computers
    4. line-oriented interface
      1. enter system commend and arguments
      2. must know all the commands
      3. man pages in unix
      4. the human factor and errors (data entry)
    5. GUI: graphical user interface (WYSIWYG)
      1. pictures convey more information
      2. menus and icons: multiple choice
      3. need pointing device (e.g., mouse)
    6. Future???
      1. voice commands
      2. speech recognition
      3. direct thought
      4. further evolution to anticipate commands/automate
  4. Guidelines for System Design
    1. transparency: not get in the way
    2. forgiving: avoid, or at least minimize severe user mistakes
    3. visually-oriented: higher bandwidth
  5. Data and Programs
    1. traditional:
      • data: static, inert, passive
      • program: dynamic, active
      • example: paint and a "power painter"
    2. modern (1999)
      • object-oriented: program embedded in the data
      • Example: spreadsheet is user-configurable
      • HTML : Hypertext Markup Language for interface into the World Wide Web


Page maintained by John Dougherty
Computer Science, Haverford College