History and background

SuperCollider, the audio processing environment, was originally authored James McCartney in 1996, and made open source under the GPL in 2002.

I started Supriya in 2014, over a decade later, at the end of my doctoral research at Harvard.

I had grown frustrated with the alack of stability and dynamism in Max/MSP (now just Max). While I love how easy it is to start and connect just about anything in Max, very complex projects are a pain, and there’s no notion of unit testing (maybe that’s changed in the years since I left behind, but probably not to the degree that I’d ever return).

I wanted to bring all the techniques I had learned while working in Python with Trevor Bača on Abjad - the Python API for LilyPond - into my work in electro-acoustic music. The SuperCollider server’s extreme dynamism and the Python language’s flexibility (and strong ecosystem) seemed like a natural fit to me.

How long could it possibly take to write a good Python API for SuperCollider? A month? A year?

Over a decade later, I’m still tinkering on Supriya. And I’ve certainly spent far more time perfecting it than I’ve spent using it for the music I had originally planned. Sometimes life is like that!

At this point she exposes basically the entire SuperCollider server API in Python, supports shared memory, clocks, patterns, and more.

I think her core functionality is pretty solid now. I hope you do too!

xoxo,