Human-Computer Interaction at MIT CSAIL

Join us!

Faculty & PIs

Randall Davis

Design Rationale Group

Max Goldman

Usable Programming Group

D. Fox Harrell

Imagination, Computation,
and Expression Lab

Daniel Jackson

Software Design Group

David R. Karger

Haystack Group

Rob Miller

Usable Programming Group

Stefanie Mueller

HCI Engineering Group

Ruth Rosenholtz

Perceptual Science Lab

Arvind Satyanarayan

Visualization Group

Mitchell L. Gordon

Incoming Faculty (Fall 2024)

PhDs & PostDocs

Marwa AlAlawi

HCI Engineering

Jumana Almahmoud


Tarfah Alrashed


Angie Boggust


Geeticka Chauhan

Design Rationale

M. Doga Dogan

HCI Engineering

Faraz Faruqi

HCI Engineering

Marie Feng

Usable Programming

Theia Henderson


Aspen Hopkins


Cédric Honnet

HCI Engineering

Farnaz Jahanbakhsh


Mackenzie Leake

HCI Engineering

Crystal Lee


Geoffrey Litt

Software Design

Alan Lundgard


Luke Murray


Martin Nisser

HCI Engineering

Soya Park


Josh Pollock

Software Design

Ticha Sethapakdi

HCI Engineering

Dishita Turakhia

HCI Engineering

Lea Verou


Michael Wessely

HCI Engineering

Dylan Wooton


Junyi Zhu

HCI Engineering

Yunyi Zhu

HCI Engineering

Jonathan Zong



Redesign Email Inbox (Haystack Group)

Email has grown from a tool for communication to one that also encompasses task management, notifications, and a personal information repository. However, current email clients are not flexible or powerful enough to handle users’ myriad needs for email. To address users' demand, we aim to redesign emails ranging from programmable personal inbox to community-wide mailing-list.

New Interaction Models for Personal Fabrication (HCI Engineering Group)

Inspired by the history of the user interface for personal computing, we are developing new interaction models for personal fabrication. Instead of working through a digital 3D editor, we propose to let users work hands-on on the physical workpiece and to update the physical object after every editing step. Our long-term vision is to enable direct manipulation for physical matter in the same way as we today manipulate digital data on touch-devices, such as the iPad.

Faster Prototyping and Design Iteration Techniques (HCI Engineering Group)

Even though considered a rapid prototyping tool, 3D printers are so slow that a reasonably sized object requires printing overnight. This slows designers down to a single iteration per day. Our concept called Low-fidelity fabrication speeds up design iteration by printing intermediate versions of a prototype as fast, low-fidelity previews. Only the final version is fabricated as a full 3D print.

Gitless: a version control system (Software Design Group)

Gitless is an experimental version control system built on top of Git. Many people complain that Git is hard to use. We think the problem lies deeper than the user interface, in the concepts underlying Git. Gitless is an experiment to see what happens if you put a simple veneer on an app that changes the underlying concepts. Because Gitless is implemented on top of Git (could be considered what Git pros call a "porcelain" of Git), you can always fall back on Git. And of course your coworkers you share a repo with need never know that you're not a Git aficionado.

Rethinking Software Design (Software Design Group)

For decades, 'software design' has been about the internal structure of the code. Recently though, with the growing interest in design thinking, practitioners and researchers have started focusing more on the design of the behavior of the software. The behavior not only determines the user experience, but also shapes the implementation in fundamental ways. In this project, we are developing a radical new approach to software design that focuses on this aspect. The key idea is the identification of conceptual constructs that embody the key behavioral features of the application. To realize the goal of a new design method for software, we analyze existing systems and applications and develop new ones, polishing our design theory in response to what we learn from case studies.

Espalier (Software Design Group)

Espalier (formerly Object Spreadsheets) is a new computational paradigm that combines the usability advantages of spreadsheets with SQL-like expressive power, providing a way to build a wide class of interactive applications more easily than with existing tools. Nearly every organization is responsible for processes that involve collection and manipulation of structured data subject to certain rules; in CSAIL and EECS alone, examples range from a milk pool that tracks whose turn it is to buy milk next to the graduate admissions process. The Espalier tool can be used to build organizational applications that support these processes by letting users view and update data subject to the applicable constraints. Espalier seeks to provide an integrated visual environment to construct the schema, data, and logic that is natural enough to appeal to end-user developers yet general enough to conveniently express arbitrary logic.

Wait-Learning (Usable Programming Group)

Wait-learning encourages users to learn during times when they would otherwise be waiting, by automatically detecting waiting moments and presenting educational exercises during that time. Combining wait time with productive work opens up a new class of software systems that overcome the problem of limited time by making use of existing wait time for productive activities. Examples of wait-learning moments used by our systems include elevator waiting, waiting during pull-to-refresh, waiting for wifi to connect, waiting for email to finish sending, and waiting for instant message replies.

Sketch Interpretation for Natural Interaction (Design Rationale Group)

Communication often has a pictorial component, as for example when designers (of many sorts) sketch, or stand at a whiteboard, drawing, gesturing, and talking about their designs. We want the whiteboard to be smart enough to understand that interaction, i.e., understand the sketches, the gestures, and the speech, and be able to draw, gesture and talk in response, as style we call symmetric multimodal interaction.

Drawing Interpretation for Cognitive Assessment (Design Rationale Group)

For many years neuropsychologists have tested people's cognitive status by having them draw simple diagrams. We have been administering these tests using a digitizing ballpoint pen, then analyzing this data using a variety of sophisticated techniques from sketch understandig, machine learning, and signal processing. This research has uncovered very subtle, previously unknown movements made when drawing that are indicative of cognitive status.


6.170 Software Studio

Fall 2019 Instructors: Daniel Jackson, Arvind Satyanarayan

Covers design and implementation of software systems, using web applications as the platform. Emphasizes the role of conceptual design in achieving clarity, simplicity, and modularity. Students complete open-ended individual assignments and a major team project. Enrollment may be limited.

6.810 Engineering Interactive Technologies

Fall 2021 Instructor: Stefanie Mueller

Teaches how to build cutting edge interactive technologies and provides an overview of each field. Topics covered include multitouch, augmented reality, haptics, wearables, brain computer interfaces, tangibles, fabrication, and more.

6.811/HST.420/2.87 Principles and Practice of Assistive Technology (PPAT)

Fall 2019 Instructors: Julie Greenberg, Kyle Keane, Rob Miller

Interdisciplinary, project-based course in which small teams of students work closely with a person with a disability in the Boston/Cambridge area to design a device, piece of equipment, app, or other solution that helps them live more independently.

6.835 Intelligent Multimodal User Interfaces

Spring 2019 Instructor: Randall Davis

Topics include basic technologies for handling speech, vision, pen-based interaction, and other modalities, as well as various techniques for combining modalities. Substantial readings and a term project, where students build an interface.

6.859 Interactive Data Visualization

Spring 2021 Instructor: Arvind Satyanarayan

Interactive visualization provides a means of making sense of a world awash in data. This course covers the techniques and algorithms for creating effective visualizations, using principles from graphic design, perceptual psychology, and cognitive science. Short assignments will build familiarity with the data analysis and visualization design process, and a final project will provide experience designing, implementing, and deploying an explanatory narrative visualization or visual analysis tool to address a concrete challenge.

HCI Seminar

📅  Tuesdays, 1pm - 2pm 📍 Zoom 🔓 Open to the public 📫 Subscribe ✉️ Contact 📅 Calendar

Spring 2021 Talk Schedule

Latest Recorded Talks See All

Wendy Mackay (INRIA) "Human-Computer Partnerships"

Bjoern Hartmann (UC Berkeley) "Interactive Design Tools for the Maker Movement"




More on the Alumni page (1999 - 2017) See All

HCI Elsewhere at MIT

Research Groups

Seminars and Meetings

Join us!

As a PhD student: apply to the MIT EECS PhD program by December 15.

As a postdoc or UROP/SuperUROP/MEng: email individual faculty directly.