Overview of core principles and techniques for the design of interaction, behavior and intelligence across objects and spaces. In a studio environment, students develop low and high-fidelity interactive prototypes that can be deployed and experienced by real users. Lectures cover the history and principles of human-computer interaction, behavior prototyping, physical and graphical user interfaces, machine intelligence, neural networks, and large language models. Provides a foundation in technical skills, such as physical prototyping, coding, and electronics, as well as how to collect data, train and deploy your own neural network models. Students complete a small interaction exercise and a portfolio-level final project.
We will start the course by creating a 1D game and a custom joystick for controlling it. We will learn techniques for in-hardware sketching and prototyping, creating state diagrams, building electronics, designing a graphical user interface, coding, as well as techniques for evaluating and critiquing interaction and interface design. We will explore the use of large language models such as GitHub Copilot, DALL-E, and Midjourney for coding and design generation.
Large Language Models (LLM), such as GPT-4, have shown an unprecedented ability to generate text, images, and code, surpassing in many ways our own human capabilities and promising to have a profound impact on design and creativity. However, while powerful, these new forms of intelligence still remain largely ignorant of the world outside of natural language, lacking knowledge of our objects, bodies and physical environments. In Project 2, we will design physical interfaces for large language models, extending their capabilities and augmenting human experience. By exploring how these models work, we will also examine their shortcomings, such as bias, lack of interpretability, computational cost, privacy, and inability to generalize.