Computer-Assisted Composition with Python
This workshop will be offered online for Summer 2023
Schedule will be M, W, F, M, W
Marc Evanstein
In this workshop we will use a newly developed Python-based composition framework called SCAMP (Suite for Computer Assisted Music in Python) to explore algorithmic processes, data sonification, and other forms of computer-assisted composition. SCAMP has been designed to flexibly accommodate both the creation of acoustic, notated music and the possibility of communicating with external synthesizers or synthesis-based languages like SuperCollider and Max/MSP. Since it is based in Python, it also offers easy access to data analysis and machine learning frameworks.
During the first part of the course, we will acquaint ourselves with the SCAMP framework, and with the fundamentals of Python programming (e.g. lists, dictionaries, functions, classes), with an emphasis on exploring the potential of each concept for musical creation. So if you’re brand new to Python—or even to computer programming—you will have an opportunity to learn the basics. On the other hand, if you’re a seasoned Python programmer, this will be an opportunity to focus on the musical potential of Python, and on exploring the more advanced possibilities of the SCAMP framework.
As we become comfortable with Python and with the SCAMP framework, we will start to explore other topics of interest to attendees. Past workshops have touched on L-systems, Markov chains, spectral music, and interactive music, and more. We will also discuss how SCAMP can connect with other tools that may be part of your compositional workflow.
The following video offers an overview of the framework:
A background in programming is helpful but not required. Both seasoned computer musicians and acoustic composers with a mild phobia of computer programming are encouraged to attend. We will all be bringing a unique set of musical and technical skills to the table!
This class offers a limited number of Diversity in Computer Music Scholarships. To apply, fill out the form here.
Scheduling Note: This workshop will take place over a two week period. Meetings will be held on Monday 7/25, Wednesday 7/27, Monday 8/1, and Wednesday 8/3, with individual check-ins on Friday the 29th.