Spring 2026 Course Search

Five Obstructions — MCO4125.01

Instructor: Nicholas Brooke
Days & Time: MO,TH 3:40pm-5:30pm
Credits: 4

A song feedback collective, focused on how musical restrictions can spur us to growth. Over the course of the term, students will write five songs (or revise a single song in radical ways) based on the critique and decisions of the group. We’ll discuss how to form supportive but insightful critique while challenging each other to go new places. What does it take to create a song based on someone else’s text, completely a cappella, or without a single chord? How do you welcome in new materials and collaborators, from across genre and style?

Senior Projects — MCO4376.01

Instructor: Virginia Kelsey
Days & Time: MO,TH 7:00pm-8:50pm
Credits: 4

This spring semester course, taught each year by different members of the Music faculty, serves as a workshop and forum for seniors to develop, present, and receive feedback on their advanced work in Music. Senior projects may take many forms, reflecting the breadth of creative practice in Music; performances, installations, musical plays, recordings, research projects, publications, or interdisciplinary collaborations are all viable options.

Music Composition Project — MCO4802.01

Instructor: Allen Shawn
Days & Time: WE 10:00am-11:50am
Credits: 2

This is a course for composers who have taken composition courses previously and have good notation skills.  Enrollment is limited to 10 students. Each student will produce a sizable piece for String Quartet. The class time will be used for analysis and study of works composed for string quartet and for examination of the student’s works-in-progress.

Computing and Data in Practice — CS4392.01

Instructor: Michael Corey
Days & Time: Tu 8:30AM-10:20AM
Credits: 2

For students doing work-study or internships, we will focus on three core areas of professionalization. First, each week will journal our work weeks, discussing and sharing our work experiences in a round-table. Second, we will build our professionalization skills, especially networking (in person and on LinkedIn), resume writing, and doing practice interviews. Finally, we will work on writing 5-year plans, to help us figure out where we’d like to be a few years after graduation. More specifically

Analyzing Blockchain/Web3 as an open distributed database — CS4391.01

Instructor: Michael Corey
Days & Time: TH 3:40pm-5:30pm
Credits: 2

Following up on the fall course on web3, this course helps students learn to track transactions and actions across blockchains, which are large distributed censorship resistant databases. The course starts by exploring the fundamental nature of the blockchain: how data is stored, accessed, and traversed. It then introduces common patterns and software used for blockchain analytics.

Artificial Intelligence — CS4105.01

Instructor: Darcy Otto
Days & Time: TU,FR 2:10pm-4:00pm
Credits: 4

How can we create machines that think, learn, and solve problems? This course explores the fascinating field of artificial intelligence (AI), introducing the fundamental concepts, techniques, and ethical considerations that drive this rapidly evolving discipline.

Building upon your programming knowledge, you will explore key AI paradigms including search algorithms, evolutionary algorithms, swarm intelligence, and machine learning.  You will implement AI solutions to real-world problems, and gain an understanding of how to think about contemporary AI development.

Metric Spaces and Geometry — MAT4162.01

Instructor: Andrew McIntyre
Days & Time: TU,FR 8:30am-10:20am
Credits: 4

Everything is geometry! This class is about two things: first, about how mathematicians have extended the concept of "geometry" beyond triangles and circles, into higher-dimensional spaces, curved spaces, spaces of functions, discrete spaces, and more. Second, about how this extension of "geometry" can allow us to apply our powerful geometric intuition to a wide range of problems that might not initially seem geometric, both within mathematics, and in physics, computer science, and elsewhere.

Discrete Mathematics — MAT4107.01

Instructor: Katie Montovan
Days & Time: MO,TH 10:00am-11:50am
Credits: 4

Discrete mathematics studies problems that can be broken up into distinct pieces. Some examples of these sorts of systems are letters or numbers in a password, pixels on a computer screen, the connections between friends on Facebook, and driving directions (along established roads) between two cities. In this course we will develop the tools needed to solve relevant, real-world problems. Topics will include: combinatorics (clever ways of counting things), number theory and graph theory. Possible applications include probability, social networks, optimization, and cryptography.

Art in Public Spaces as connective tissue — DAN4380.01

Instructor: Martin Lanz
Days & Time: MO,TH 10:00am-11:50am
Credits: 2

In this course, we will explore various projects that aim to connect people with their surroundings and communities.
We will also explore the strategies that various artists have implemented to increase their audiences and interest in the arts.
We will analyze and design projects that seek sustainability, diversification, and access to the experience of art and culture.

By evaluating environments we could design artistic projects that promote art, artistic education, and the promotion of cultural products as actions to build community, identity, and a creative economy.

Robotics and STEM Education: A Workshop — EDU2107.01

Instructor: Hugh Crowl
Days & Time: FR 10:30am-12:20pm
Credits: 1

In this course, students will gain experience with using simple programmable robots and how they can be utilized in STEM education. The focus of this class will be on learning and designing lessons for K-12 students utilizing these robots. This class is accessible for students at all levels of computer programming experience (including none). 

Introduction to Computer Science 2: Algorithms and Application — CS4384.01

Instructor: Darcy Otto
Days & Time: TU,FR 10:30am-12:20pm
Credits: 4

Introduction to Computer Science 2 continues the design-recipe approach started in Introduction to Computer Science 1. We extend our toolkit from structural recursion into generative recursion, abstraction, and algorithmic problem-solving. Students move beyond simple data definitions to work with more sophisticated structures (trees, graphs, sets, maps) while beginning to reason about program efficiency and resource use.

Legacy and 3D Audio Mixing and Production — MSR4374.01

Instructor: Cristian Amigo
Days & Time: WE 10:00am-11:50am & WE 2:10pm-4:00pm
Credits: 4

This course explores the art and science of mixing and producing audio for both emergent immersive formats and traditional legacy platforms. Students will gain hands-on experience with spatial audio technologies such as Dolby Atmos, Ambisonics, and binaural mixing, while also mastering industry-standard techniques for stereo and 5.1 surround sound production.

BC Soundscape Dub Ensemble — MSR4373.01

Instructor: Cristian Amigo
Days & Time: TU 10:30am-12:20pm
Credits: 2

This ensemble-based course explores the intersection of live performance, experimental soundscapes, and dub aesthetics. Rooted in the traditions of dub music—including remix culture, delay and reverb manipulation, and bass-driven textures—students will create immersive sonic environments using a mix of acoustic instruments, electronic tools, field recordings, and live effects processing.

The Tuning in The Trees — MUS4279.01

Instructor: Omeed Goodarzi
Days & Time: FR 2:10pm-4:00pm
Credits: 2

The Tuning in the Trees is an advanced seminar in microtonality that treats tuning systems as both technical structures and living landscapes. Students will explore how musical intervals emerge from natural patterns—such as tree bifurcations, harmonic ratios, and number sequences—while engaging deeply with Just intonation, Meantone, Bohlen–Pierce, and other non-Western tunings.

Composing for the Lever Harp — MCO2132.01

Instructor: Rachel Clemente
Days & Time: TH 1:40pm-3:30pm
Credits: 2

In this course we will be taking a hands on approach to understanding the lever harp both historically and compositionally. We will be building and stringing small 19 string harps which will be used as the basis for our compositional work where students will be creating new works of varying length for the lever harp to be presented at the end of the semester. We’ll look at what techniques are and are not achievable, what makes this instrument unique to other harps, and how to include it in larger compositional contexts.