This course explores how sound, code, and interaction can merge to create musical experiences that invite listeners to shape the music, not just hear it. Students create a series of browser-based musical systems that respond to users, incorporate randomness, and draw patterns from existing music.
We begin by creating a series of audio-visual interfaces—an instrument, a score/mixer, and a loop-based piece—that invite deeper listening through play. Incorporating elements of sound and music production, these projects turn tools normally hidden in the studio into interactive spaces where listeners, performers, and audiences can engage with music in new ways. From there, we dive into the inner workings of music, examining how sound organizes into rhythm, melody, timbre, and harmony, and how these patterns can be expressed in code. Students design interactive studies on each musical element, reimagining tools like drum machines, sequencers, and synthesizers into experimental, playful, or educational systems that incorporate creative coding, machine listening, and machine learning techniques.
Classes combine lectures, coding tutorials, listening sessions, design exercises, and discussions of existing interfaces. Throughout, students bring their own musical sensibilities into the work while developing their creative coding skills using p5.js and Tone.js. Students regularly share work and receive feedback, using input from the class to develop and iterate on their ideas. The semester culminates in an interactive or generative piece that builds on the semester’s studies, documented through sketches, demos, and code.
About Luisa Hors: www.luisapereira.net/
Prerequisite: Creative Computing (IMNY-UT 101)