CMSC 113 Introduction to Computing: Robotics
This course introduces students to the fundamental components of both computing and robotics. Topics include variables, conditionals, loops, functions, sensors, and actuators. Students will practice these concepts through small projects using either pre-built mobile robots or electronics that they put together themselves. Class sessions will be split between lectures and “workshop days” where students can work individually or in small groups on their projects. We will utilize a simple programming language that ties together hardware and software. This course satisfies the prerequisites for CMSC 141.
Fall 2025, Fall 2024, Spring 2024, Fall 2023
CMSC 131 Introduction to Mind, Brain, and Behavior
How do brains make minds? Can computers think? Is my dog conscious? Cognitive science uses an interdisciplinary approach to attempt to find answers to such questions. This course covers topics ranging from biology, computer science, linguistics, philosophy, and psychology, combining these different approaches to explore the connection of mind, brain and body. We will also use this interdisciplinary approach to examine how humans and other intelligent systems feel, perceive, reason, plan, and act. Laboratories will provide students with hands-on experience forming hypotheses, analyzing data, and computational modeling. Prerequisites: pre-calculus or its equivalent and a willingness to engage a broad variety of ideas and approaches from the natural, mathematical, and social sciences.
Fall 2025, Spring 2024
CMSC 141 Object-Oriented Programming
This course introduces students to the methodologies of object-oriented design and programming, which are used throughout the Computer Science curriculum. Students will learn how to move from informal problem statement, through increasingly precise problem specifications, to design and implementation of a solution for problems drawn from areas such as graphics, animation, simulation. Good programming and documentation habits are emphasized.
Fall 2024, Spring 2025
CMSC 361 Human-Robot Interaction
Human-robot interaction (HRI) is a burgeoning, interdisciplinary field that lies at the intersection of computer science, psychology, human factors engineering, and mechanical engineering. This course will cover three main topics: 1) the technical, 2) the psychological, and 3) the social considerations and challenges of a world in which robots interact with people on a regular basis. For example, we will discuss the role that robots may play in eldercare, from the technical difficulties that entails to the way it impacts the care ecosystem. Students will read key research papers in HRI, and work in small groups on a semester-long project that brings together all three main class topics. Labs will be held weekly for students to work on the project. Prerequisite: CMSC 201, Data Structures
Fall 2023
CC 126 Perspectives on Trust
Trust is incredibly important for social life. It is the foundation of enriching personal relationships, it enables us to accomplish things we could not do on our own, it builds communities, and it expands knowledge. A single conceptualization of trust is elusive: what is trust; how is it developed, lost, and regained; how does it scale; and how does it adapt to constantly evolving social structures? Doing the hard work of theorizing trust is necessary, if we are to trust wisely. Through philosophy, students will investigate the abstract concept of interpersonal trust; through psychology, students will investigate the roles of intimate attachments and perspective-taking in children’s development of trust; through computer science, students will investigate questions of trust in technology, focusing on trust in robots.
Co-taught with Drs. Sarah Dunphy-Lelii and Johnny Brennan
Spring 2025