What is the first step after reading the tutorial?


I finished Sonic Pi tutorial but I found myself Paralyzed and couldn’t start the live coding because I don’t know how to start a track.
What is the arrangement of music track?
What is the first thing to start with? Where to locate the kicks or drums?
Should I stop now and study music theory?

Help me, Please!


Start copying in examples and live tweak them until you have something else. Also watching Sam live code always gets some ideas going for me. https://youtu.be/G1m0aX9Lpts

I usually start with a loop for kick/snare, one for hats, and one for a bass. To find the available drums, either use the help section list or type "sample ". Music theory never hurts, but I wouldn’t stop anything in order to learn it, integrate what you’re learning into the code.


Thanks, I will try to experiment using your style.


I agree that playing with pre-existing code is a good way to get a sense of what is happening and how changing one parameter might effect the sound.

I like the random seed function which allows you to create melodies without needing to know too much in terms of actual music theory. Pair this up with a kick drum and you have a simple template which still sounds good.

Here is an example:

live_loop :kick do #basic kick drum keeping a steady beat
  sample :bd_haus
  sleep 0.5

live_loop :melody, sync: :kick do #syncs this loop with kick loop
  use_random_seed 2355  #chooses the pattern the notes play in
  use_synth :tri #synth sound
  16.times do #number of notes played in the pattern before it repeats 
    play scale(:e3, :major_pentatonic, num_octaves: 2).choose #scale being played - starting note of scale, type of scale, how many octaves in the scale
    sleep 0.25 #the duration of each note played

In a live loop you can just experiment with changing a single parameter and see what happens. In this example, try changing the random seed number (or delete it and see what happens). Try changing the number of notes in the .times do. Try changing the scale. Try changing the sleep amount. You will start to get a feel for what happens. Try copying the play(scale) line of code and add it underneath to have two playing at once.

These are just some suggestions but I feel like these are some good basic functions to get familiar with.

Also, if you ever have some music theory questions, I’m happy to help out.


Your first step is to decide what kinds of music you like and want to create.

Do they have a fixed beat? Will you need to learn how to sync other sounds to
that beat? What other instruments do you want in your music?

Do you want to make ‘classic’ songs.? Ones that have a ‘start, middle and end’, or do
you want to create 5 minutes of loops and sound effects for people to dance to?

Knowing what you want to start with, will go a long way to improving your enjoyment
of SPi… and enjoyment will keep you coming back to make more music.

Then start taking some of the code posted up in the forums, and playing with it.
Most of us post up small examples when helping people… and I dont think any of
us mind people ‘borrowing’ it… I mean, it’s why we put it there in the first place.

Try changing the synths and the fx’s, and change the timing by changing the sleeps,
until you have something you like… then tuck it away safe, and go find something else
you like…

Do the two fit well together? Great! Then use them as the basis of a song. Add more,
until you think it’s reached the point you would be willing to share it with friends, or the

But the key is to enjoy whatever you make with SPi.



i haven’t finished the whole tutorial yet, but one of the more helpful things i found was the super mario brothers music in sonic pi (https://gist.github.com/xavriley/87ef7548039d1ee301bb#file-its_a_me_mario-rb), because you know what it’s supposed to sound like, and also you can see how it corresponds to the sheet music

(also, it really sounds like the super mario brothers music. i tried another live-coding thing called Tidal, and it can do some pretty neat things, but it seems like it’s harder to make it do something specific, like recreate some song you know in Tidal language. and Haskell made my brain start hurting, with all the weird-looking symbols and stuff)


Hi @AhmadMRagab,

unfortunately you’re right - there’s lots of information on how to get started, but not much material on more advanced topics. I’m hoping that this forum will be a good place to get ideas for such material in the short term whilst we all collectively figure out how to push the limits of Sonic Pi and share our ideas with others.

My suggestion would be to ask simple questions at first and start with very basic answers and share your thoughts and results on here as much as possible. That way we can all get involved with the discussion and learn together :slight_smile:

It would also be very useful if you could save all the questions you have, as they would provide very valuable material for a future book/series on advanced Sonic Pi usage.


I’d be extremely interested in providing content for intermediate tutorials. Degrees is the first thing that comes to mind that could use more info, it was a game changer when I figured it out, and I’ve noticed some folks were grateful for the example I posted before. I also went through a phase of figuring out some basic styles before I started aiming for abstract, would be glad to break down some dub and electro examples.

Should Someone Develop a Sonic Pi Course on Kadenze?

Please do - and please consider posting a first draft of such a tutorial, here in these forums :slight_smile: