CS 798H: Human-Computer Interaction
What is the course about?
Daily we come across several computing devices and tools (from smartwatch trackers to search engines). Some of them are a delight to use, and some are crappy and frustrating to learn, understand and use – ever wondered what makes them so? Ever wondered why using a smartphone or learning to code so easy and natural for some people, and so hard for others? Is digital transformation in India going to take off, or no, and why? All these, and more, are the concerns of Human-Computer Interaction (HCI) as a field.
In this course, we will cover the basic ground for HCI, considering how we can study how people interact with computers (if any) in a given context, how to identify opportunities for improvements to their work, and how to systematically design systems that are a delight.
The field itself is interdisciplinary and borrows theories and methods from various fields including psychology, computer science, design, sociology and anthropology. This course will give a flavor of this interdisciplinary nature, as well as introduce you to these methods and theories that will come in handy in a lot of contexts. We will also consider some common contexts in which Human-Computer interaction is tricky, what we can do about it, and where the open problems lie!
Who should take it?
- If you are looking to get a job as an interaction designer, user designer, or any form of design job – this course would be required.
- If you are a researcher in CS and are looking to understand how people will use the stuff you build, then you should take this. There is a human aspect to pretty much every subfield of computer science—and a lot of work is publishable in all major CS conferences (Check yours!).
- If you are a student in CGS or Design, you will find the material very relevant, and offering a complementary set of perspectives than you normally have.
- If you intend to start up, this course is a must-have, because design is a key differentiator between competing products.
- Anyone else who is curious, wants to better understand the world we cohabit with computers, and exercise their creative brain muscles – this will be a fun course!
What is the course going to be like?
HCI is an “applied” discipline, much like software engineering or design. So expect to do a bunch of hands-on work—in class, and as part of projects and assignments.
- There will be 3 hours of lectures (2 lectures x 1.5 hours long). Of course there will breaks, videos, etc!
- There will be weekly assignments and readings. This will include paper and design critiques, reading textbook chapters, designing studies, observing people, etc.
- There will be a group project, running across most of the term. You will find user needs / problems with an existing piece of software artifact, design/redesign it, evaluate the design. At the end of the course, you will present all of this + write a paper. There will be periodic milestones building up to the final version!
- There will be bi-weekly quizzes.
What will you cover?
Chapter-1: Introduction to HCI. What is HCI – Interdisciplinary nature of HCI – History of HCI – Importance of design and HCI – The design process -- The double diamond of design.
Chapter-2: Need finding. Data collection (interviews, surveys, observational studies, contextual inquiry). Sampling. Qualitative data analysis (coding, thematic analysis/card sorting, focus group, inter-rater reliability, threads to validity, triangulation). Quantitative data analysis in need finding. Ethical considerations in human studies.
Chapter-3: Models, theories and frameworks in HCI. What are they and why are they useful? Perception and memory. Model human processor. Information foraging. Activity theory. Distributed cognition. Mental models.
Chapter-4: Prototyping (low-fi and hi-fi prototypes, use of metaphors). Evaluation (quantitative – controlled experiments, measures, statistical comparisons; qualitative – heuristics, cognitive walkthroughs, desirability and reaction toolkits, hallway usability study).
Chapter-5: Recurring problems in HCI and ideas on how to approach them:
- Human-information interaction (search and browsing, information seeking and sensemaking, minimal learning);
- Human-AI interaction (role of the AI agent, challenges of non-determinism, explanation, trust, principles, wizard of oz methods);
- Human-robot interaction (Verbal and non-verbal interaction, embodiment, emotions, social robots and robots for autism);
- HCI for creativity support (nature of creative tasks and supporting them, focus and interruptions, cognitive load, case of programming);
- HCI for development (the minimum common denominator, constraints, the next billion users, cultural aspects);
- HCI for collaboration (social mechanisms in collab, facilitating communication and coordination, awareness and catching up, personal vs. professional)
- HCI for learning and education (if time permits).
- Inclusive design (if time permits)
- There are three recommended textbooks, none required.
- Research methods in Human-computer interaction by Jonathan Lazar, Jinjuan Heidi Feng and Harry Hochheiser
- Interaction design Beyond human-computer interaction by Helen Sharp, Yvonne Rogers, Joseph Preece
- Guide to advanced empirical software engineering by Shull, Singer and Sjoberg.
- The readings will be pointed out to students, and students can read them online.
Tentatively, the grading will include a combination of:
- weekly assignments (30%),
- quizzes (30%), and
- project (40%).