title: Reactive user interface
text: # Reactive user interface
  
  A human-to-computer user interface is said to be "reactive" if it has the following characteristics:
  
  * The user is immediately aware of the effect of each "gesture". Gestures can be keystrokes, mouse clicks, menu selections, or more esoteric inputs.
  * The user is always aware of the state of his/her data. Did I just save those changes? Did I just overwrite my backup by mistake? No data is hidden. In a figure-drawing program, the user can tell whether a line segment is composed of smaller segments.
  * The user always knows how to get help. Help may be context-sensitive or modal, but it is substantial. A program with a built-in help browser is not reactive if its content is just a collection of screen shots or menu item labels with no real explanation of what they do.
  
  Reactivity was a major goal in the early user interface research at MIT and Xerox PARC. A computer program which was not reactive would not be considered user friendly no matter how elaborate its presentation.
  
  Early word-processing programs whose on-screen representations look nothing like their printer output could be reactive. The common example was WordStar on CP/M. On-screen, it looked like a markup language in a character cell display, but it had deep built-in help which was always available from an on-screen menu bar, and the effect of each keystroke was obvious.
  
  * This software-engineering-related article is a stub. You can help Wikipedia by expanding it.
  * v
  * t
  * e
  