05-440/05-640 Interaction Techniques, Spring, 2016
Number: 05-440/05-640
Intended for Undergraduates, Masters and PhD students!
Time: MW 1:30pm-2:50pm
Room: NSH 3002
12 University Units
Office: Newell-Simon Hall
(NSH) 3517
Phone: x8-5150
E-mail: bam@cs.cmu.edu
Office hours: TBD
(or by appointment)
TA: Kathy Yu
E-mail: kyu1@andrew.cmu.edu
Office hours: Thurs, 2pm-3pm, in NSH 3502 (or by appointment)
This course will provide a comprehensive study of the many ways to interact with computers and computerized devices. An “interaction technique” starts when the user does something that causes an electronic device to respond, and includes the direct feedback from the device to the user. Examples include physical buttons and switches, on-screen menus and scroll bars operated by a mouse, touch screen widgets and gestures such as flick-to-scroll, text entry on computers or touch screens, consumer electronic controls such as remote controls, game controllers, and adaptations of all of these for people with disabilities. We will start with a history of the invention and development of these techniques, discuss the various options used today, and continue on to the future with the latest research on interaction techniques presented at conferences such as ACM CHI and UIST. Guest lectures from inventors of interaction techniques are planned. Students will have a choice for final projects that can focus on historical or novel interaction techniques. For example, one option will be to create a novel technique, perform a user study of it, and write a paper about the result, which may be suitable for conference submission. Another option will be to investigate and write a paper or make a video about the history and various previous designs for widely used interaction techniques, possibly including an interview with the inventor(s). After taking this course, students will be able to:
- Articulate design issues regarding interaction techniques.
- Design a new interaction technique given a set of requirements and constraints.
- Evaluate interaction techniques using the appropriate tests for performance and usability.
- Describe the historical progression of the most important interaction techniques and the factors that impacted their evolution and eventual widespread adoption.
A tentative schedule for the course and topics for class periods is available.
Homework list, and homeworks policies. The class has a Piazza page - please post questions and observations there so the whole class can benefit. We will answer Piazza questions as quickly as possible.
(See also last time's materials).
Students must have taken at least some introductory HCI course, such as 05-391 / 05-891 DHCS; 05-410 / 05-610 UCRE; 05-430/05-630 PUI; 05-431/05-631 SSUI; 05-863 / 08-763 / 45-888 Intro HCI Tech Exec; or equivalent. Preference will be given to students in the degree programs of the HCII (Undergrad Minor in HCI, BS in HCI, M-HCI, PhD-HCI). Students do not need to know how to program – we would especially like to invite students interested in the history of computation to enroll. (Note: if you have a focus on the history of technology, but no courses in HCI, we may be willing to make an exception to that requirement--email the professor.)
“I really like the list of topics.” “I liked learning about new interaction techniques, along with their history.” “[I liked] learning the history about interaction techniques and the guest lectures – being able to see and listen to the inventors.” “Overall, a good professor and a good course.” “I loved it!”
Informally, it describes things like menus, scroll bars, text entry fields, typing on a smart-phone with an on-screen keyboard, gestural interfaces like flicking to scroll, etc. More formally, here are some definitions:
My definition:
An “interaction technique” starts when the user does something that causes a computer to respond, and includes the direct feedback from the computer to the user. Interaction techniques are generally reusable across various applications.
An interaction technique, user interface technique or input technique is a combination of hardware and software elements that provides a way for computer users to accomplish a single task.
Foley & van Dam's, 1990 textbook's definition:
An interaction technique is a way of using a physical input/output device to perform a generic task in a human-computer dialogue.
It is expected that everyone in the class will do a final project, probably in teams of 2 or 3 students. Here are some ideas for final projects:
- Create or edit a Wikipedia page or an entry for interaction-design.org about an interaction technique or about an inventor of one, with appropriate citations:
- Fix up the tests for homeworks 1, 3 and 4:
- The Fitts Law test should really use the circle test from the ISO 9241-9 standard like this one but adapted for smartphones.
- Everyone came up with good ideas for how to fix the scrolling test on the midterm.
- Document, evaluate, analyze, and critique one or more existing interaction techniques with appropriate evidence
- Maybe compare it with alternatives with a user study
- Maybe prepare a chapter for the interaction-design.org encyclopedia about it
- Maybe update the All the Widgets video with changes in this interaction technique since 1990 (or create a new section)
- Pick a new (or relatively new) hardware pointing device, and do a thorough analysis of it:
- A Leap Motion in-air pointing device
- The Contour RollerMouse Red plus (was evaluated last year)
- Pick a particular, important milestone design, and enumerate and describe all of the novel interaction techniques introduced in that system. For example, what interaction techniques were first introduced in the:
- Star
- Lisa
- Macintosh
- Windows 95
- iPhone
- etc.
- Interview an inventor of a particular interaction technique:
- Most of them are still alive, and Professor Myers is personally acquainted with many of them. For example:
- Ivan Sutherland (constraint-based editing, etc.)
- Alan Kay (covered windows)
- David Canfield Smith (Star user interface; desktop icons) -- guest speaker last time
- Norm Cox (graphic design for Star, icons, etc.) -- guest speaker this time
- Larry Tesler (copy/paste; Lisa UI) -- guest speaker last time
- Bruce Horn (one of original Apple people on a Macintosh) -- guest speaker this time
- Bas Ording (Macintosh Dock and Apple flick scrolling)
- Daniel Oran (Windows Task bar)
- Ted Selker – IBM pointing stick -- guest speaker last time
- Loren Brichter (pull to refresh) -- guest speaker this time
- etc. (if you have an interaction technique in mind, we can try to figure out where it came from!)
- Create a video, audio and/or paper report
- Do a thorough analysis of the data the class collected for homeworks 1, 3 or 4.
- Reimplement some of the old techniques (e.g., old scroll bars; Xerox Star method for text editing; etc.), and possibly do a user test to see if they were actually worse than current versions
- Invent a new interaction technique
- Implement or prototype it
- Do a user study of the result
- Write a conference-style paper discussing the design issues and evaluation (and optionally submit it to an appropriate conference)
- Create a project of your own design, in consultation with the professor.