Virtuality (software design)

From Wikipedia, the free encyclopedia

Virtuality is a term used by Ted Nelson for what he considers the central issues of software design. "Virtuality" refers to the seeming of anything, as opposed to its reality. (This has been the dictionary meaning of "virtuality" since at least the 18th century). Everything has a reality and a virtuality. Nelson divides virtuality into two parts: conceptual structure and feel. In every field these have different roles. The conceptual structure of all cars are the same, but the conceptual structure of every movie is different. The reality of a car is important, but the reality of a movie is unimportant-- how a shot was made is of interest only to movie buffs.

Designing the virtuality of software should be the center-- designing its conceptual structure and feel. The feel of software, like the feel of a car, is a matter of late-stage fine-tuning (if it is worked on at all). But Nelson regards the design of software conceptual structure-- the constructs we imagine as we sit at the screen-- as the center of the computer field. However, the conceptual structure of almost all software has been determined by what Nelson calls the PARC User Interface, or PUI, on which Windows, Macintosh and Linux are all based. The feel is only icing on top of that.