Kotaro Hara, Singapore Management University
AY2026-2027, Term 1
About the Course
Modern computational methods like machine learning and mathematical optimization let you design novel interactive technologies. This Human-Computer Interaction (HCI) course will introduce you to the basics of such computational methods and guide you in learning how to apply them to design interfaces and interaction methods.
This course omits some essential topics in HCI:
- We do not discuss user-centered design for designing technologies. We do not cover topics like prototyping techniques (e.g., paper prototyping and Wizard-of-Oz). We also do not discuss design methodologies. If you want to learn such topics, see: IS211 Interaction Design and Prototyping.
- This course does not cover empirical methodologies that involve real human being. If you are interested in qualitative methods like user interview and quantitative methods like A/B testing, you should refer to: Empirical Methods for HCI
- The course does not focus on making hardware user interfaces. Thus, if you are interested in learning about sensors, actuators, circuit design, and other hardware-related aspects of HCI, this course is not for you.
There are some prerequisites:
- Good programming skills. We use Python in this course, so being able to use the language would help.
- Undergraduate-level knowledge in linear algebra, calculus, probability, and statistics.
- (Recommended) Exposure to user-centered design. Although the course will focus on computational aspects of HCI, having a basic understanding of general HCI concepts would help. If you are unfamiliar with such topics, see the lecture notes in the following page: IS211 Interaction Design and Prototyping).
- (Recommended) Knowledge in empirical methods used in HCI research: Empirical Methods for HCI
Details
Please bring your laptop every week. Every lecture involves some hands-on programming activities.