CS474: Human Computer Interaction - Mother of All Demos (100 Points)

Assignment Goals

The goals of this assignment are:
  1. To identify the systems and devices that shaped the way that humans engage with modern technology
  2. To motivate the application of human-computer interaction to our collective humanity thorugh the systems to augment the development of augmentation systems

The Assignment

In 1968, Douglas Engelbart gave The Mother of All Demos to the joint conference of the ACM/IEEE. Engelbart’s On-Line System (NLS) featured several groundbreaking computing ideas that we take for granted today due to their ubiquity.

In this assignment, you will watch the Mother of All Demos video (also shown below), and discuss its implications for human-machine interfaces as a class. Begin by answering these questions, which will help you to prepare for a meaningful class discussion on the history of human-computer interaction:

  1. What novel hardware interfaces were introduced at the demo?
  2. What kinds of software systems were demonstrated?
  3. What devices or software do you see at the demo that do not persist in ubiquity in modern computing? In other words, are there devices or software that have evolved into something different in modern use (and if so, what and how)?
  4. Engelbart called his design an “augmentation system.” What do you think he was hoping to augment?
  5. What is meant by the term “collective memory,” and what significance does Douglas Engelbart’s demo and career have with respect to our collective memory?

Submission

In your submission, please include answers to any questions asked on the assignment page in your README file. If you wrote code as part of this assignment, please describe your design, approach, and implementation in your README file as well. Finally, include answers to the following questions:
  • Describe what you did, how you did it, what challenges you encountered, and how you solved them.
  • Please answer any questions found throughout the narrative of this assignment.
  • If collaboration with a buddy was permitted, did you work with a buddy on this assignment? If so, who? If not, do you certify that this submission represents your own original work?
  • Please identify any and all portions of your submission that were not originally written by you (for example, code originally written by your buddy, or anything taken or adapted from a non-classroom resource). It is always OK to use your textbook and instructor notes; however, you are certifying that any portions not designated as coming from an outside person or source are your own original work.
  • Approximately how many hours it took you to finish this assignment (I will not judge you for this at all...I am simply using it to gauge if the assignments are too easy or hard)?
  • Your overall impression of the assignment. Did you love it, hate it, or were you neutral? One word answers are fine, but if you have any suggestions for the future let me know.
  • Any other concerns that you have. For instance, if you have a bug that you were unable to solve but you made progress, write that here. The more you articulate the problem the more partial credit you will receive (it is fine to leave this blank).

Please refer to the Style Guide for code quality examples and guidelines.