Analysis of sonic pi vs traditional instruments?



Relative to traditional instruments, Sonic Pi is different in that it does not require use of subconscious automation (aka ‘muscle memory’) which has pros and cons. As a teaching tool I think this is a very good thing, as it removes a large barrier that exists with traditional instruments. The learner can start playing immediately, and not sound terrible doing so due to poor technique.

However this also creates limitations. Due to the need to type something, it is impossible to instantly hear a note, which may be an obstacle to playing by ear, and developing ear training. Even within a midi sequencer for comparison, one can drag a note and hear it immediately. Entering complex melodies by typing them is also extremely tedious.

Due to these factors, I think that sonic pi is most directly suited to repetitive music based on short loops, or the exploration of algorithmic sound. Those are my initial thoughts. Is there any existing work more deeply studying this comparison?


Hi there,

I’m positive that there’s a lot of work that explores the tension between embodied interactions vs notational interactions - especially in the wider academic world.

However, to broaden the discussion, it’s also important to point out that writing code is not the only way to interact with Sonic Pi. It’s also very trivial to write a small piece of code which then listens to external events such as MIDI and immediately responds with audio change. For example, with 4 lines of code, you can build a MIDI-powered keyboard synth - but the fun part is you get to define what happens when the user hits middle C on the keyboard. Not just which synth to trigger, but anything you can imagine coding can be triggered. Also, it’s very easy to react to MIDI CC messages, so turning a knob can directly modify the sound.

Essentially, tools like Sonic Pi blur the pre-conceived barriers between performance and composition. It’s not wholly in the composition domain, it can be converted completely to the performance domain, and (in my opinion) more excitingly can be somewhere in between - controllable by the user.


That is a good point, but from the last time I looked at it, the documentation is more focused on the code/algorithm side, and I don’t remember seeing anything about interfacing with midi.

The point that you make paces sonic pi in a similar space to modular synths.


Please do take a look at sections 11 and 12 of the tutorial :slight_smile:


Hi @robhickman,

just some provisional thoughts about that:

It is a very interesting question whether Sonic Pi is suitable for which music and what specific workflows and learning objectives it encourages. Having said that, I do believe that this question has yet to be answered, which will involve time and people to find out (the forte piano has had more than 250 years so far). IMHO these questions should rather focus on the potential than the limitations or - to put it differently - limitations usually trigger creativity. Every instrument has limitations (such as that you can’t play a glissando with a piano) or rather ‘character traits’ which shaped the culture and creation of music made with it. To be more concrete:

Playing by ear is a complex skill which can be developed via different paths. I e. g. made the experience that working with Sonic Pi while trying to recreate sounds and arrangements is a very interesting and fruitful way to develop one of the most important aspects as a musician, which is to listen very closely.

I also think that Sonic Pi and its ‘code approach’ can be very helpful in analysing music on a somewhat deeper level, because it forces you to find abstractions (in a way ‘metaphors’) which deviate from the construction rules of what you have been analysing (or recreating) in the first place. It is a bit like translating from one language into the other.

You are right: It is not easy to create melodies with Sonic Pi but I am not sure that this is only a limitation. Meanwhile there are some libraries available which try to overcome this ‘shortcoming’. I myself have been experimenting with my livelooper to be able to quickly create melodies (e. g. a bass line) on the fly and furthermore: to start manipulating and extending these adhoc creations as samples.

By the way: Messing around with samples and effects is a lot of fun and will eventually always generate interesting results. For me it has a lot to do with the appropriation of sounds which you transform into something which starts belonging to you. Even better: Record you own sounds and work with it (this does not have to be music!).

‘Repetitive’ music (it has still to be defined what exactly that is and where the variations ends and the repetition starts) might not be everybodies cup of tea but it largely dominates the musical world we live in. I definitely would encourage (and I do so in my courses) to have a closer look to the highly designed musical products our world is abundantly filled with and find out what you like, why you like it, whether and how the concept of quality applies to these products and what their aesthetics is about. This is - again only in my personal opinion - best done if you leave the position of the consumer and start producing yourself. Again this is about appropriation in the best sense of the word.

I do also think that Sonic Pi deserves a prominent place in the field of musical education precisely because it is somehow different but nevertheless accessible. I can not validate this empirically (not yet) but I am sure it brings people into creating music which otherwise would stay on the mere consumption side.

So far some thoughts about the intesting subject you broad up.



It is precisely the issue of every instrument having limitations that lead me to this question. I also think that no instrument is fundamentally ‘better’ or ‘worse’ than any other, as it depends on the effect that the music is trying to create.

Do you have an example of your livelooper in use? I’m unsure exactly what it does, is it recording from sonic pi, or an external source?

To me, ‘repetitive’ music means something based on a very short loop which repeats with little or no variation, typical drum loops for instance. This isn’t really my thing, and I prefer raw acoustic, instrumental music including Irish trad and similar genres. The melodies repeat, but they are longer, and players introduce variations. It is also common for the beat of the music to be implied through stress and slight changes in timing, instead of thrown in your face through a prominent drum beat.

Approaching something through using samples is certainly an interesting approach, but not something that I have any experience with.

I guess that my current view on Sonic Pi is kind of analogous to my initial experience with functional programming, it is so far outside of the usual approach of creating music that I’m unsure what to think about it, or what it can effectively be used for. Thus I’m trying to put that in some context.


Personally, I’d move this earlier in the tutorial, or at least include mention of the ability in another section, with links.


Well, there is a rough demo me playing with the livelooper and some softsynth. This is just a proof of concept and musically crap. The basic idea is

  1. being able to create e. g. basslines (2, 8 or any numbers of bars) on the fly.
  2. playing with other people live (where one of my first attempts was playing with a Digeridoo player) and being able to record bits of the incomming signal an working on these samples live

Basically the livelooper uses the inbuild recording function of Sonic Pi. You can set the bpm and the length of the loops you want to record (4 tracks available). Then you can arm one of these loops and the livelooper will record the next number of beats/bars.

Yes, I see. I quite like loop-based music (and lots of other music amongst this also Irish Folk music… wonderful melodies … especially the sad ones …). One think I learned to appreciate is, that e. g. Techno is not at all about musical developement, there is usually close to no melody, no classical voice leading, no great variation in melodical of harmonical terms (there might be some in rhythical terms). It is more about the sound and layering. There are other genres where looping is essential but not really or not merely repetitive such as Minimal (e. g. Steve Reich) and there is also the pure magic of repetition, which can not be explained other than through the repetition itself (that is tautological but somehow intended). But, yes, definitely a matter of personal preference.



I understand what it is now, seems like a good idea and I don’t think that the result is terrible. It creates a soundscape and the various melodies coming in and out adds interest. I like what you did with the digiridoo samples.

Thanks for the explanation. I do find that it is easier to appreciate different kinds of music by understanding more about their intentions. Highland pipe music for instance, makes extensive use of embellishments for emphasis, as it cannot stop sounding and cannot vary it’s volume. I think your own experiments with live looper demonstrate the layering well.

While I generally don’t listen to this kind of music, I have found it fun to experiment with in sonic pi, although I find it difficult to explain why. There is something interesting about hearing how the sound changes when variables are altered or things added.


Thanks for your kind words.

And yes, I also tend to understand and like different kind of music the more I know something about it (whereas ‘knowing’ is not meant in a merely cognitive, rational sense). Since I am using Sonic Pi I have developed an interest for all kinds of electronic music. Before that e. g. Techno was something I did not like much (as a former Jazzer I especially disliked a four-on-the-floor kick drum).