I am writing this post in response to this tweet I received from @rational_is_me
[Firstly the DAWs I have used are limited to Pro Tools, Cakewalk Sonar, and Audacity. Most of this post will be in reference to how I have used the first 2]
To me, Sonic Pi code is to music/production, what sheet music is to music. But better. If you were a classical music composer you would have pre-printed papers of staff/stave and you would compose a piece of music using a piano, transcribing your musical ideas onto the staff using certain lines to denote pitch, certain symbols to denote time and bars to denote loops. With Sonic Pi - instead of symbols and lines representing time and pitch - functions are loops and numbers represent time, pitch and a whole host of other parameters like EQ, phase, mix, room reverb etc. In this way, the code is like a more complex form of musical notation, but (ironically) a kind of musical notation that is actually easier to understand and which you can execute and hear in real time. This allows for a lot of musical ‘doodling’ on a level which I would have to bend backwards to achieve in a DAW.
MUSIC AND MATH
So much of music is math (rhythms, chord intervals, scale intervals) and this kind of notation also taps into my (limited) understanding of arithmetic and ratios that relate to music. To be able to manipulate pitch and rhythm as MIDI numbers and sleep times (even FX parameters as numbers) is very liberating. It becomes easier (and faster) to identify music patterns and production techniques. It also helps advance my own understanding of music theory.
Learning Music theory or learning to play an instrument or learning a DAW, all have a pretty steep learning curve. Sonic Pi doesn’t. You can create interesting musical arrangments within one week of learning the programme. It allows you to explore concepts of music theory and production that would seem impenetrable with any other DAW/instrument, and, in this way, encourages an appetite for advancing music knowledge. Learning to play guitar or piano involves some basic music theory and a lot of exercises training your motor skills. A combination of these motor skills and theory helps to compose and generate new music with most of that music (or all of it!) never notated, just a riff that might exist in one’s head as muscle memory. With a combination of coding skills and theory, using Sonic Pi is like generating music through notation itself, and encourages a level of experimentation with rhythms and harmonies, where you’d have to be fairly advanced to do so using any other music instrument, music program or music tool. With sonic pi, It is easier and faster to develop intuition as a composer/producer.
I got into music production because of the album ‘Endtroducing…’ by DJ Shadow which is music constructed solely from samples. The idea of manipulating samples and loops is what a lot of hip-hop/electronic/pop music production is based on. In DAWs (for me), looping forms a part of the editing process and is treated as a more static element in the track. I will copy-paste/duplicate a region to loop it. Same with automating certain parameters (e.g, sliding the cutoff, or bypassing, i.e, switching the mix from 1 to 0). In a DAW, automating parameters usually involves a lot of processing power (this is true for pro tools). With Sonic Pi this is not the case. Using the live_loop not only simplifies manipulation of loops, it allows for a lot more fluid, complex and interesting manipulation (e.g, randomisation, Sam Aaron’s probablistic sequencer), where the amount you can morph the loop seems to extend to infinity.
So why not just use a drum machine/step sequencer? (Was a big user of Hydrogen, once upon a time…) They do allow you to create looped patterns where each pattern can be modified, even on the fly. This is interesting because, for the fact that sonic pi reads the code in a buffer line by line, I feel the music tends to not sound too machine-like. If you have two loops (containing a beat sequence) playing simultaneously in hydrogen (or pro tools) it sounds very much like a machine, because everything is exactly on the beat. As far I have understood, Sonic Pi has a self correcting mechanism for time exceptions, which make it sound a little more organic than a normal drum machine (on this point I could be wrong, because this I have gauged purely by ear).
It’s portable and shareable!
This is as much as I can think of for now. If anyone has any questions or would like to add (or subtract) to this or if you have a different take on this, i would love to hear it!