

Bruce Damer's Personal Histories of the Desktop User Interface

The Newly Inspired Bushy Tree
(click on many of the "leaves" to bring up associated web resources)

Interactive influence tree

In 1999, John Redant, then a student at university in Canada, with input from DigiBarn curator Bruce Damer and others filled out the original "bushy tree" diagram of the lineage of visual computing systems (mostly software). The goal was to bring this diagram up to the year 2000. You can understand this diagram in the context of John's article Contributions and Downfall the Xerox Star. Many of the "leaves" in the tree above are clickable and will bring up associated web resources. Find more about the Bushy tree in contributed comments below. If you would like to correct, add to or otherwise help us describe the bushy tree better, please contact us.

New! John Redant updates the famous IEEE Bushy Tree as a Wikia!

Comments by virtual visitors about the new "Bushy Tree"

Comment from Diarmuid Pigott (Feb 2004)
about Vannevar Bush, As We May Think and the MEMEX



From Randy Gobbel (paraphrased)
About the thick line running from BravoX to MS Word


Visit our Alto 30th Birthday Bash pages where we feature audio and video wherein Charles Simyoni describes the relationship between BravoX and Word.

From Henry M. Halff on Interlisp-D, Logo and other interactive object oriented graphical systems (June 2004)

What about Interlisp-D, which, in the early 80s, implemented the programming language in a graphical environment on Xerox workstations? Interlisp-D, Smalltalk, and the Star workstation all ran on the same Xerox D-machines. Richard Burton, Warren Teitelman, and others were responsible for the development of Interlisp-D at Xerox PARC. The language itself (Interlisp) originated at BB&N. Interlisp won an ACM award, partly for its innovative use of graphics.

InterLISP did run on a Dolphin (can’t remember which one, if I ever knew). It also ran on a Dandelion, and perhaps others.

I wish that I could tell you exactly where Interlisp joins the tree, but I can’t. The Interlisp-D people were in the same building as the Smalltalk group. There was a lot of communication, but also some rivalry between the two.

As I recall, Interlisp-D, like Smalltalk, was spun off by Xerox in the 80s, but I don’t think that the spinoff made it. By that time, a reasonably good Common LISP was available for the Macintosh, called, appropriately enough “Macintosh Common LISP.” It was quite popular among those in my community (AI in education). It is still available from Digitool (http://www.digitool.com). I think that it’s lineage is more that of the MIT AI LISP Machine.

Two other systems, built for children, might qualify as graphical computing environments.

Logo, the brain child of Seymour Papert (MIT AI Lab) and Wally Feurzeig was originally a symbolic programming language for kids. Papert added a graphical component in the form of a “turtle” that moves about the display under program control, carrying a programmable pen that can chart its progress. Logo is still popular and is being taken in several interesting directions, for example Starlogo http://education.mit.edu/starlogo/. Logo is interesting in that it’s graphical primitives, turtle movements, are really quite different than those (strokes and fills) employed by other graphical computing environments.
There is even a book Turtle Geometry, by Harold Abelson and Andrea diSessa, on the theoretical foundations of turtle graphics.

Another outgrowth of Simula are environments based on finite automata. Starlogo is one of these. Also, in the eighties, Apple had a product known as Cocoa (not what they now call Cocoa) that allowed kids (of all ages) to program up a bunch of finite automata using a WYSIWYG, drag-and-drop interface. The automata could move about the screen on their own, interact with other nearby automata, change appearance, etc. Cocoa’s immediate descendant is a product called Stagecast (http://www.stagecast.com). Stagecast is hosted in Java. AgentSheets (http://www.agentsheets.com) is a similar product, but I can’t tell you anything about its history.

Another branch that I don’t see (or can’t discern) in the tree are event-driven graphical programming environments, that is, systems in which someone drags a bunch of user interface elements onto a display and then defines the behavior of each in order to create an application. Examples that come to mind are HyperCard, ToolBook, and their descendants. Also, I suppose that Visual Basic and the like fall in this category.

Curator's Note, see Henry's homepage here

From Bill Harper (Jan 2005)

Brings back old memories whey I look thru your Xerox Star stuff. I worked for a division of Xerox, called Versatec for 10 years (83-93), and the last 11-12 years I worked for Sun. I found your chart on the evolution of Graphics very interesting. I have always felt there was a connetion between Java and Postscript (really Interpress). I used an 8010, 6085 as well as GlobalView (on SunOS). I even use to hand write Postscript programs (for demos of course) so thats why I draw the connection.

The reason I am writting this is to add to your evolution graphics. Versatec took the Star (in June 1985) and with a CAD/CAM package tryied to market it as the Expert system. The group within Versatec was called the EIS group. I actually have a picture as well as a write on its introduction into the market we did at the DAC event in June of 1985 in Las Vegas. IT even mentions the first customer that bought one. I can Scan and send to you the picture if your interested for you website. We did this for about 3 years before Versatec pulled the plug, because EXPERT was not sucessful. But I attribuite this early work to where we are today.

Since you were in the heart of the 8010 developement, you may remember this EXPERT CAD system ... I recall, we had great Xerox GUI environment and the other "turn key" vendors (Daisy, Cadnetics, Intergraph) had very simple menu driven interfaces in to their package. I guess we were way before our time with the GUI, and people really did not understood the power of what you and your colleges created. Great Work!!!!

Anyhow, let me know where I can send a picture of the Xerox "Expert" CAD system to, I would be happy to add to history.

One last comment, I don't see NeWS anywhere in there ? Remember this was the Postscript based GUI environment that Gosling came up with, where the rendering was don via Display Postscript. It was Sun's attempt to bring a Standards based GUI to the Market, but we all know that X Windows won out as the standard. The GUI Sun built for NeWS was SunView. Maybe its this event that makes me feel the connection between Java and Postscript.


Originally Inspiring Bushy Tree

The original version of the figure (8) from The Xerox "Star": A Retrospective, a paper appearing in IEEE Computer, September 1989 and also in the book Human Computer Interaction: Toward the Year 2000 by Morgan Kaufman.

An excerpt from this paper follows, explaining Fig. 8 -- How systems influenced later systems.



Memex -- The story starts in 1945, when Vannevar Bush, a designer of early calculators and one of President F.D. Roosevelt's science advisors, wrote an article describing his vision of the uses of electronics and information technology. At a time when computers were new, room-sized, and used only for military number-crunching, Bush envisioned a personal, desktop computer for non-numerical applications, and called it the Memex. Due to insufficient technology and insufficient imagination on the part of others, Bush's ideas languished for fifteen years.

SketchPad -- In the Sixties, people began to take interactive computing seriously. One such person was Ivan Sutherland. He built an interactive graphics system called Sketchpad that allowed a user to create graphical figures on a CRT display using a light pen. The geometric shapes users put on the screen were treated as objects: after being created, they could be moved, copied, shrunk, expanded, and rotated. They could also be joined together to make larger, more complex objects that could then be operated upon as units. Sketchpad influenced Star's user interface as a whole as well as its graphics applications.

NLS -- Also in the Sixties, Douglas Engelbart established a research program at Stanford Research Institute (now called SRI International) for exploring the use of computers "to augment the knowledge worker" and human intellect in general. He and his collegues experimented with different types of displays and input devices -- inventing the mouse when other pointing devices proved inadequate -- and developed a system commonly known as NLS.2* NLS was unique in several respects. It used CRT displays when most computers used teletypes. It was interactive (i.e., on-line) when almost all computing was batch. It was full-screen-oriented when the few systems that were interactive were line-oriented. It used a mouse when all other graphic interactive systems used cursor keys, light pens, joy sticks, or digitizing tablets. Finally, it was the first system to organize textual and graphical information in trees and networks, which today would be called an "idea processor" or a "hypertext system".

The Reactive Engine -- While Engelbart et al were developing ideas, some of which eventually found their way into Star, Alan Kay, then a graduate student, was doing likewise. His dissertation, The Reactive Engine, contained seeds of many ideas that he and others later brought to fruition in the Smalltalk language and programming environment, which, in turn, influenced Star. Like the designers of NLS, Kay realized that interactive applications do not have to treat the display as a "glass teletype" and can share the screen with other programs.

Xerox PARC
In 1970, Xerox established a research center in Palo Alto to explore technologies that would be important not only for the further development of Xerox's then-existing product line (i.e., copiers), but also for Xerox's planned expansion into the office systems business. The Palo Alto Research Center (abbreviated "PARC") was organized into several laboratories, each devoted to basic and applied research in a field related to the above goals. The names and organization of the labs have changed over the years, but the research topics have stayed the same: materials science, laser physics, integrated circuitry, CAD/CAM, user interface (not necessarily to computers), and computer science (including networking, databases, operating systems, languages and programming environments, graphics, document production systems, and artificial intelligence).

Alto -- PARC researchers were fond of the slogan: "The best way to predict the future is to invent it." After some initial experiments with time-shared systems, they began searching for a new approach to computing. Among the founding members of PARC was Alan Kay. He and his collegues were acquainted with NLS and liked its novel approach to human-computer interaction. Soon, PARC hired several people who had worked on NLS and in 1971 signed an agreement with SRI licensing Xerox to use the mouse. Kay and others were dedicated to a vision of personal computers in a distributed environment. In fact, they coined the term "personal computer" in 1973, long before microcomputers started what has been called the "personal computer revolution". One result of the search for a new approach was the Alto (see Fig 9).

The Alto was a mini-computer that had a removable, 2.5 mega-byte hard disk pack (floppy disks did not exist at the time) and 128 to 256 kbytes of memory. Unlike most machines of its day, the Alto also had a microprogrammable instruction set, a "full-page" (10 1/2 x 8 1/4 inch; 600 x 800 pixel) bitmapped graphic display, about 50 kbytes of high-speed display memory, and a mouse.

The first Alto was operational in 1972. At first, only a half-dozen or so Altos were built. After software that exploited the Alto's capabilities became available, demand for them grew tremendously, spreading beyond PARC into Xerox as a whole and even to external customers. Eventually, over a thousand Altos were built.

Ethernet -- Another product of the new approach was the Ethernet. With its standardized, layered communications protocols, Ethernet provides a way of connecting computers much more flexibly than had been previously possible. Soon after the first Altos were built, they were networked together. Eventually, the network grew to thousands of workstations (Altos and Alto-successors) within Xerox's worldwide organization, giving Xerox millions of person-hours of experience with networked personal computers and servers.

Smalltalk -- Alan Kay had been one of the main advocates of the Alto. His Learning Research Group (LRG) began using the Alto to build prototypes for a personal computing system "of the future": a portable machine that would provide -- rather than a canned set of applications -- the building blocks necessary for users to build the tools and applications they need to solve their own information processing problems. The technologies needed to build a lap computer with the power of the "DynaBook" (as the envisioned system was called) were unavailable at the time, and still are. The prototypes developed by Kay's group evolved into the Smalltalk language and programming environment. They further promoted the notion of personal computing, pioneered complete, interactive programming environments, and refined and solidified concepts of object-oriented programming that had been extant only in vestigial form in previous systems. Most importantly for Star, they demonstrated the power of graphical, bitmapped displays, mouse-driven input, windows, and simultaneous applications. This is the most visible link between Smalltalk and Star, and is perhaps why many people wrongly believe that Star was written in Smalltalk.

Pygmalion -- The first large program to be written in Smalltalk was Pygmalion, the doctoral thesis project of David Smith. One goal of Pygmalion was to show that programming a computer does not have to be primarily a textual activity: it can be accomplished, given the appropriate system, by interacting with graphical elements on a screen. A second goal was to show that computers can be programmed in the language of the user interface, i.e., by demonstrating what one wants done and having the computer remember and reproduce it. The idea of using icons -- images that allow users to manipulate them and in so doing act upon the data they represent -- came mainly from Pygmalion. After completing Pygmalion, Smith worked briefly on the NLS project at SRI before joining the Star development team at Xerox.

Bravo, Gypsy, and BravoX -- At the same time that LRG was developing Smalltalk for the Alto, others at PARC, mainly Charles Simonyi and Butler Lampson, were writing an advanced document editing system for it: Bravo. Because it made heavy use of the Alto's bitmapped screen, Bravo was unquestionably the most WYSIWYG text editor of its day, with on-screen underlining, boldfacing, italics, variable font families and sizes, and variable-width characters. It allowed the screen to be split, so that different documents or different parts of the same document could be edited at once, but did not operate in a windowed environment as we use the term today. Bravo was widely-used at PARC and in Xerox as a whole.

In 1976-78, Simonyi and others rewrote Bravo, incorporating many of the new user-interface ideas floating around PARC at the time. One such idea was modelessness, promoted by Larry Tesler3 and exemplified in Telser's prototype text editor Gypsy. They also added styles, enhancing users' ability to control the appearance of their documents. The new version was called BravoX. Shortly thereafter, Simonyi joined Microsoft, where he led the development of Microsoft Word, a direct descendent of BravoX. Another member of the BravoX team, Tom Malloy, went to Apple and wrote LisaWrite.

Draw, SIL, Markup, Flyer, and Doodle -- Star's graphics capability (i.e., its provisions for users to create graphical images for incorporation into documents, as opposed to its graphical user interface) owes a great deal to several graphics editors that were written for the Alto and later machines.

Draw, by Patrick Baudelaire and SIL (for Simple Illustrator) by Chuck Thacker (main designer of the Alto) were intellectual successors of Sutherland's Sketchpad (see above): graphical object editors that allowed users to construct figures out of selectable, movable, stretchable geometric forms and text. In turn, Star's graphic frames capability is in large measure an intellectual successor of Draw and SIL.

Markup was a bitmap graphics editor (i.e., a paint program) written by William Newman in BCPL for the Alto. Flyer was another paint program, written in Smalltalk for the Alto by Bob Flegel and Bill Bowman. These programs inspired Doodle, a paint program written for a later machine by Dan Silva. Doodle eventually evolved into ViewPoint's Free-Hand Drawing application. Silva went on to write DeluxePaint, a paint program for PCs.

Laser Printing -- Fancy graphics capabilities in a workstation are of little use without hardcopy capability to match it. Laser printing, invented at PARC, provided the necessary base capability, but a way was needed for computers to describe output to laser printers in a uniform way. For this purpose, Bob Sproull developed the Press page-description language. Press was heavily used at PARC, then further developed into Interpress, Xerox's product page-description language and the language in which Star encodes printer output. Some of the developers of Interpress later formed Adobe Systems and developed Postscript, a popular page description language.

Laurel and Hardy -- A network of personal workstations suggests electronic mail. Though electronic mail was not invented at PARC, PARC researchers (mainly Doug Brotz) made it user-friendly for the first time by creating Laurel, a display-oriented tool for sending, receiving, and organizing e-mail. The experience of using Laurel, which was named after a tree, inspired others to write Hardy, named after Laurel, for an Alto successor machine. Laurel and Hardy were instrumental in getting non-engineers at Xerox to use e-mail. The use of e-mail spread further when Star and ViewPoint spread throughout Xerox. Today, Xerox employees depend heavily upon the company's global e-mail network for communication, both work-related and otherwise, with other employees.

OfficeTalk -- One more Alto program that influenced Star was OfficeTalk, a prototype office automation system written by Clarence "Skip" Ellis and Gary Nutt. OfficeTalk supported standard office automation tasks and tracked "jobs" as they went from person to person in an organization. Experience with OfficeTalk provided ideas for Star because of the two systems' similar target applications

end of excerpt.

See also: The Computer Tree

Large systems from ENIAC on up to the early 1960s.

From Electronic Computers Within the Ordnance Corps , by Karl Kempf. "U.S. Army Diagram" (specific description of the diagram is here)


An updated Computer Tree (to 1970) from the endpapers of the Computer Yearbook for 1969 (Computer yearbook and directory Detroit [Mich.]: International Electronics Information Services, 1969-1971. Thanks to Diarmuid Pigott for scanning this. Click here for a medium sized verson and here for a large version.


Please send site comments to our Webmaster.