Thinker5s.gif (3570 bytes)

Human-Centered Computing Course 

Fall '00, 405 Soda Hall, TuTh 11-12:30pm.

CS 294-4, CCN 26762

Instructor: John Canny, 529 Soda Hall, 642-9955, jfc at cs, office hours W-Th 2-3pm

Course Contents

Recommended books

Project Suggestions

Project Presentation Schedule

This is a regular 3-unit graduate course. There is also a seminar in human-centered computing this semester. The seminar page is

Course Overview

This course adopts a human-centered approach to the design of information systems. Information systems are evolving away from loose collections of applications toward integrated "digital assistants" and "context-aware systems". Those visions of computing assume a high-level understanding of human activity. HCC gathers together knowledge from several fields that lay the groundwork for design goals and principles for future computing systems. The topics presented here were selected because of their importance for the activities that computers mediate today. Several have already led to big ideas in computing: e.g. Mark Weiser's original vision of ubiquitous computing was inspired by the theory of situated activity that we will be discussing. The objective of the course is to give students in computing a broad understanding of human behavior in learning and working (two kinds of knowledge ecology). Ideally, a deep understanding of these topics can lead to new ways of thinking about and integrating computing in human activities. 

There is a flip side to including other disciplines, especially social sciences, in HCC. Today, some large-scale systems provide an unprecedented (and perhaps fleeting) opportunity to those disciplines for studies of human behavior. Automated data gathering supports new kinds of study at very large scale or at unusually fine detail. We have such an opportunity in the term projects this semester.

The course contents gives a breakdown of lectures by topic. The topics are:

Learning and Development:
Although they may not seem immediately relevant, learning and development readings framed much of the discussion for the entire course  last semester. This is probably because a lot of "knowledge work" is a kind of learning (micro-genesis) which shares many traits with other kinds of learning and development. This section discusses the two most influential theories of learning. 
Cognitive Science:
Cognitive science is a tricky to cover, since there's no obvious core, and in fact there is contention between many of the important theories. This section takes a dialectic approach. Contentious theories are presented back-to-back in the same week, so we will hopefully get some mileage from those conflicts. This is prime discussion time.
Personality, Emotion, Persuasion...:
Its important to remember that much (perhaps most) knowledge work is about influence, trust-building, and persuasion. This section gives some basic concepts that are fundamental to understanding and modeling those situations. The concepts here are surprisingly quantitative. 
Activity theory and relatives:
Vygotsky and Leontev's theories (activity theory) have had a big influence in contemporary education, anthropology and HCI theory. These lectures give a short introduction to it. 
Social Networks:
Social networks are graphical models of relationships between groups of people. They can model communication, exchange, influence, trust etc.  There is a mature set of core algorithms, and they have traditionally been applied (by hand) to analyse small groups or organizations. Now they are increasingly being used in computer applications like "knowledge networks" and "tacit information systems". 
Design and Knowledge Creation:
The design community has established a good set of human-centered design principles. They begin with studies of existing practice through ethnography etc., and include a high-level of participation by the user community during the design process. Knowledge creation is a popular concept today to describe even more general knowledge work. Tricky concepts like tacit knowledge and knowledge networks have been bandied about for a while, but are now becoming concrete as implemented in some new information systems. 

Lecture Format

Classes are held from 11-12:30pm Tuesday and Thursday in 405 Soda. The new format is based on feedback from last year's class. Each class will have:

  1. A student-led presentation on the reading(s).
  2. Some commentary by me with additions and talking points.
  3. Class discussion on the readings in small groups, possibly followed by group summaries to the rest of the class. 
  4. A short description by me of the important points to look for in the *next* lecture's readings. 

Once I know the numbers, each enrolled student will get a small wirelessly-networked pen computer to be used for live, collaborative note-taking. The class with experiment with this technology during the semester. 


Every enrolled student needs to hand in a list of two or three main points from each reading at the beginning of class. 


Projects can be computer programs, designs for information appliances, user studies and analysis, or papers that combine ideas from another discipline with computer science. More information will follow.