For beginners: If you’re wondering which things to start with, here’s our recommendation:
- Read at least one of the “recommended introductory tutorials” listed just below
- Make sure you read about how to use the help system (because it contains hundreds of useful code examples)
- Join the sc-users mailing list
Recommended introductory tutorials:
- Scott Wilson’s SC tutorial - comes bundled with the SC download, as do some more tutorials
(…plus here’s a quick reference based on Scott’s tutorial by Andrew McWilliams)
- Nick Collins’ SuperCollider tutorial has a 12 week course of tutorial files as browseable HTML, and is also available in a downloadable zip
- David Cottle’s SC tutorial
Other introductory tutorials:
- Spanish-language tutorial translations by Federico Reuben
- German-language tutorials
- Spanish-language “screencast” video tutorials
- Italian-language tutorial by Andrea Valle
- Portuguese (Brazil) language tutorial by Universidade Estadual de Maringá
- Japanese-language study group at IAMAS with jp/en tutorials (also forum, faq, wiki)
- Les Hutchins’ SC tutorials
- ixi’s basic audio programming tutorial in SC (download)
- Designing Sound in SuperCollider (how to create sound effects)
Tutorials covering more advanced techniques and/or third-party libraries:
- dewdrop_world’s SC tutorials - making good use of the dewdrop extensions.
- Compiling SC and SC plugins - a tutorial on getting your hands dirty with the source code
The Help system that comes bundled with SuperCollider includes hundreds of documents, covering all the classes plus some useful overviews and tutorial material.
From within SC itself, highlight a word of code and press [Cmd+?] (on Mac) to jump to the help doc for that entity.
In 2009 several of the help files where translated into Spanish (by group of people including Sergio Luque, Juan Sebastian Lach, Rodrigo Frenk and Ernesto Romero). You can download them as a zip file from here.
Some core topics
Some suggestions of key things you should become familiar with if you’re getting started with SuperCollider:
- Client vs server: SuperCollider is two separate components: the audio synthesis server (scsynth) and the language client (sclang). This separation has important consequences, so make sure you understand it.
- Object-Oriented Programming: If you’re familiar with OO programming (e.g. in Java or C++) you’ll have no problems - otherwise, search the web for tutorials on object-oriented programming.
- Synths and SynthDefs: SynthDefs are the primary way to define the sound synthesis that the server will perform.
- Order of execution: A server can have many synths running at the same time, and if their outputs/inputs interact then you need to know how to keep them all in the correct order.
- Scheduling: Using Tasks and Routines, Events and Patterns to control the creation/manipulation of synths etc.
- Understanding errors: You’re bound to make the occasional mistake now and again; so you should know how to understand error messages when they appear.
Some further topics
This list is not complete or authoritative, but some topics you might like to learn about once you’re familiar with the core aspects of using SC.
These links jump directly to articles from the SC built-in help: