Information Software and the Graphical Interface
March 21, 2008 – 17:07Magic Ink. Information Software and the Graphical Interface by Bret Victor.
Long, but highly recommended reading.
Software design consists of graphic design (drawing pictures) and industrial design (allowing for mechanical manipulation).
Information software is for learning an internal model. Manipulation software is for creating an external model. Communication software is for communicating a shared model.
Manipulation software design is hard, but most software is information software.
Information software design is the design of context-sensitive information graphics. Information software is not a machine, but a medium for visual communication.
Context can be inferred from the environment, which can include physical sensors, other information software, documents created with manipulation software, and data such as email which acts as a user profile.
Context can be inferred from a history of past environments and interactions. Last-value predictors provide a rudimentary approach. Learning predictors can infer patterns and make dynamic predictions.
Context can be inferred from user interaction, but only as a last resort. The best way to reduce or eliminate interaction is through information-rich graphic design that uses the environment and history. Remaining interaction can be reduced with graphical manipulation, relative navigation, and tight feedback loops.