Computer technology has evolved dramatically over the last several hundred years. Dating back to the early 1800s humanity began to use mechanical means to attempt complex calculations on numbers that were far too large for the human brain to reliably compute. The very name “computer” simply refers to the act of calculating or processing some amount of data1. To limit the scope of this article only the history beginning with early punch cards in 1890 through to today’s modern User Interface (UI) designs will be covered.
Punch-card machinesBeginning in 1890, Herman Hollerith (who’s company would later be known as IBM) designed a punch card system to calculate the 1880 census2. These first machines were primitive by modern standards and were highly dependent on mechanical functions (gears, switches, moving parts) to compute data. The punch-card system was a way to input data into these machines that could be read by mechanical means. The data was encoded on a paper card in the form of punched holes, the cards were then fed into the machine, where the computer would then mechanically read each one in order. These machines are sometimes called “batch computers”.3
Text-based command terminalsFollowing those early days of mostly mechanical input and output computers evolved to include a visual form of user interaction. This came in the form of video terminals that allowed the computer to display text output to a video monitor and would be known as a Command Line Interface (CLI).4 This dramatically improved the level of interaction that a person could have with the computer. Around 1960 this method of visual interaction would become known as “computer graphics” and will become the primary method of receiving visual input from a computer system. 5 Input in those early days was done through a keyboard where the user would input commands into a terminal prompt. These commands were then interpreted by the machine and some computation would then occur. This combination of text input and output would prove to be very popular, so much so that many computers still to this day are capable of basic text commands.6
Graphical user interfacesEventually, however, the text-based command prompt system would prove to be too limited for the applications that were being developed. Computers were no longer simply used to run calculations on vast amounts of data. Home and office users would evolve a desire for business software, games, graphics and art and other tools that could make their jobs more productive. This gave rise to the Graphical User Interface (GUI). The GUI concept was first introduced in 1965 by Douglas Engelbart. Engelbart showed a prototype of the modern computer that used a mouse and a graphical user interface to display and interact with visual “windows” on a computer screen that represented various system functions.7 This design would later be developed into a full operating system GUI by Xerox known as the Xerox Alto. The mouse and keyboard combination would also prove to be an extremely effective way to interact with computers, a method that is also still in use to this day.
Touch based user interactionFinally, in the early 2000s a new style of UI became very popular: direct interaction with the video screen, either with a stylus pen or, eventually hands and fingers. This was prompted by the rise of smartphones and portable electronic devices (tablets, pads, PDAs, etc) which would reach a global turning point with the release of the iPhone in 2007. The iPhone featured a fully touch-oriented user interface with no physical keyboard. The vast majority of input done on these devices now is all done through a combination of the touch technology and visual “buttons” displayed on the device’s screen.8 Although desktop and server computers still use a combination of mouse, keyboard and video interaction, the touch style of user interaction has become extremely popular and dominates for portable devices.
The future of user interaction?There are many emerging technologies that are helping to make user interaction with computing devices much simpler. One such technology is voice command and has seen all the major tech companies competing to develop the most intuitive voice assistants possible. From Alexa to Siri to Cortana, all the major players are working hard to develop the best voice based digital assistants.9 These digital assistants rely heavily on artificial intelligence to intuitively determine what a user’s voice command means and execute the proper command based on that input. This emerging form of interaction is sometimes called a Voice User Interface (VUI).10 These artificial intelligence assistants are rapidly approaching science-fiction-level quality, reminiscent of how the crew of the ship Enterprise from the television series Star Trek interacts with their computer systems.