Design, implementation, and evaluation of human-computer interfaces. Human capabilities, including the human information processing model, perception, Fitts's Law, memory, attention, and color vision; task analysis, user-centered design, design principles; low-fidelity prototyping; heuristic evaluation, formative evaluation, controlled experiments; model-view-controller, input models, output models, constraints, layout, animation, and automatic user interface generation.
Undergraduate course (6.813) has readings from lecture notes, programming assignments, and a substantial, semester-long group programming project.
Graduate course (6.831, originally called 6.893) has readings from current literature, assignments related to research topics and experiment design and analysis, and a substantial, semester-long group programming project.