In 1963, Ivan Sutherland created a pointer-based system known as Sketchpad, which allowed direct manipulation of graphical objects. This later became the inspiration for the Apple Newton personal digital assistant (PDA). It wasn’t until the late ’70s when computing power became sufficiently concentrated that a machine designed for a single user could run a graphical interface. The first machines of this kind were graphical workstations - expensive machines like the PERQ, the size of a small fridge which sat under the user’s desk and drove a small graphical display. During the 1980s, these machines gradually dropped in price until they had completely displaced text-only machines in all but a small number of places. By the ’90s, even cheap home computers were expected to come with a graphical user interface.
This part of the collection contains some notable examples from the development of the graphical user interface.
The 1980s saw an explosion in computing manufacturers. The components for building a cheap computer cost only a few hundred pounds, and the demand grew considerably.
The PERQ was one of the early graphical workstations. It was designed by Three Rivers Computer Corporation, named after the confluence of rivers in Pittsburgh, where the company’s founders had previously been employed at Carnegie Mellon University. International Computers Limited (ICL), a British company founded in 1968, handled European distribution and some of the manufacturing.
The PERQ was built in an era when the Pascal programming language was popular. Pascal is a member of the ALGOL family. It was designed as a simplified and slightly extended version of ALGOL for teaching, but became popular in industry since it large numbers of students graduated knowing it.
In order to encourage the adoption of the language, a ‘porting kit’ was written in Zurich. This included a simple, stack-based, virtual machine which executed an instruction set known as ‘p-code’. Since the compiler was written in Pascal, all that was required to get the compiler and all other Pascal programs working on a new platform was to port the virtual machine. The Java virtual machine can be seen as a direct descendant of the p-code virtual machine. Both are stack-based, meaning all operations load data from memory onto the stack or manipulate the top few stack elements. For example, adding two numbers together in a p-code virtual machine was accomplished by a sequence of three instructions. The first two would load the values onto the stack and the third would replace the top two elements on the stack by their sum.
The PERQ had a microcoded architecture, where the public instruction set was very similar to p-code. This made running Pascal code very simple, since the portable compiler’s output could be run directly. The operating system and other tools were all written in Pascal.
The University of Wales, Swansea, acquired two PERQs shortly after their release. Professor Chen gained some of his first graphics programming experience on one of them.
In 1984, Steve Jobs, co-founder of Apple Computers, resigned after a short power struggle with the new CEO John Sculley. He formed NeXT, with the intention of building the perfect computer.
In 1988, the company released the NeXT Cube, a one foot square black magnesium cube, was released. This machine was dubbed an ‘interpersonal computer’ by Steve Jobs, who believed this was the next step in development after the personal computer. It was designed with networking in mind and was instrumental in the creation of the World Wide Web when in 1991 Tim Berners-Lee wrote the first web browser on his cube and used it to run the first web server.
The cube was somewhat rare for the era in that it lacked both a floppy disk drive and a hard disk drive, although the latter was available as an optional extra. Both were replaced with a magneto-optical disk. This stored 256MB of data on a removable disk - a huge amount in an era when 40MB hard drives were common. The idea behind this was that users would store all of their data on a disk and be able to use it on any machine.
The high price of the cube ($6,500 in 1988, about £6000 in today’s money) meant that it had only limited success. In 1990, the NeXTstation was introduced as a cheaper alternative. This was somewhat more conventional, sporting an internal hard drive and a 3.5” floppy drive instead of the magneto-optical drive. It was also physically smaller, coming in a slab form-factor that sat underneath the monitor.
As with the cube, the machine included a high-resolution display, supporting resolutions of 1120x832 in either four shades of gray or 4,096 colours (for the colour variant), a resolution that wasn’t found in most home computers for another decade. In addition, it included a digital signal processor for sound output, giving CD-quality sound output with effects processing.
The NeXT machines are credited with the first real commercial development of the object oriented programming concept. They used Objective-C for application development. Both the language and the development environment were heavily inspired by Smalltalk, the first real object oriented environment, developed at Xerox PARC. Although NeXT stopped making hardware in the early ’90s, this environment would later be used for WebObjects, the first web application development framework.
In the late ’90s, Apple bought NeXT and used their operating system as the basis for Mac OS X, and many features of the operating system can be traced back to this system. The development framework originally created by NeXT for their workstations, and later refined in collaboration with Sun, is now branded as Cocoa by Apple.