It’s OK Not To Know
A while back I was questioned on why I had used a .tanh in some code I had posted on the Supercollider Facebook group. I had to give the most detailed answer I could about it.
“I don’t know, it sounded good.”
I do not have a strong enough math background to tell you exactly what a .tanh will do to a signal, I tried it on the sound and it sounded good so I left it in.
From an outsiders perspective languages like Supercollider can be very intimidating because it seems like there is an unlimited amount of learning to do upfront. I would like to suggest that you can be very productive with just a little bit of knowledge. The unique sound of my album “They Want To Make Your Body Move. I Want To Hold You Perfectly Still.” is almost equal parts my intention and my ignorance. The album is completely synthesized from simple oscillators because I had not yet started to work with audio buffers. If you examine the source code for the album you can actually chart the development of my coding styles from track to track. Many earlier pieces are nothing but a single SynthDef executing a simple process, the most simple of these being modifying several parameters with a Line. Pieces I had finished later have more complex structures using Pspawner or Pdefs in a Routine to divide the piece into sections.
Audio programming is the same as any other task, you really have to just dive in and get your feet wet and work with what you do know. Begin building a body of work and slowly add to it as you learn new techniques and tools. Do not wait until you feel you have “learned enough” to create something. If you let your learning be dictated by what you are trying to accomplish I believe you will learn at a much quicker pace then by trying to blindly follow a set of tutorials.