Sonic Pi Resources and Lesson Plans
|
|
Hardware Connect |
Common Core Text Connect |
Sonic Pi is an open source programming environment originally designed to explore and teach programming concepts through the process of creating new sounds. Sonic Pi comes with an associated scheme of work which emphasizes the importance of creativity in the learning process and gives users the control to turn their sonic ideas into reality.
However, in addition to being an engaging education resource it's also evolved into an extremely powerful and performance-ready live coding instrument. Source: https://github.com/samaaron/sonic-pi
However, in addition to being an engaging education resource it's also evolved into an extremely powerful and performance-ready live coding instrument. Source: https://github.com/samaaron/sonic-pi
Ph.D. research focused on the design of Domain Specific Languages in order to allow domain concepts to be communicated and transposed more effectively and efficiently. Dr. Aaron is actively involved in applying these techniques within academia and industry, empowering project collaborators to have greater insight into the software being built. The impact of this work has led to both clarity and greater focus within collaborative project teams by eroding many of the language barriers that exist across domains.
Click on the image to learn about Sam Aaron, the software architect behind Sonic Pi.
Click on the image to learn about Sam Aaron, the software architect behind Sonic Pi.
Sonic Pi Playlist on YouTube - Video Lessons, Tutorials and More
|
|
Your browser does not support viewing this document. Click here to download the document.
|
Your browser does not support viewing this document. Click here to download the document.
|
Novice Project: Your First Sounds (reserved words)
Play and Sleep: "play" and "sleep" will get you started making music
Project Directions: You can find this lesson in the tutorial under 2.1 Synths, Your First Beeps Mary Had a Little Lamb:
Mary had a little lamb B A G A B B B Little lamb, little lamb A A A B D D Mary had a little lamb B A G A B B B Its fleece was white as snow B A A B A G |
First Line of Mary Had a Little Lamb in Sonic Pi Code:
play :B sleep 0.4 play :A sleep 0.4 play :G sleep 0.4 play :A sleep 0.4 play :B sleep 0.4 play :B sleep 0.4 play :B sleep 0.4 |
|
Extension Activity: See if you can answer the following questions by doing research on the web
|
Beginner Project: Play it again! (loops)
Background Information:
You can find this lesson in the tutorial, under 5.2 Programming Structures, Iterations and Loops Project Directions: Make a ringtone that plays 4 times. You can use numbers or letters to represent the sounds, for example "play :B" or "play 71". Example Code: 4.times do play chord(:E, :minor) sleep 0.4 play chord :G sleep 0.4 play chord :D sleep 0.4 play chord :A sleep 0.7 end |
Extension Activities:
- The preset beats per minute on Sonic Pi is 60 beats per minute, or 1 beat every second. See if you can speed up and slow down your program by writing in the command "use_bpm" at the top of your program (bpm = beats per minute). If you need help watch this video. Example code: use_bpm 120
- Right now you just have a regular beeping sound, use a new command "use_synth" at the top of your program (synth = synthesizer) to change the sounds of your notes. Example code: use_synth :fm
- How can effects and synthesizers change the way a note sounds? Watch this video with The Edge showing you his latest riff
Beginner Project: Simple samples (libraries)
Background Information:
Samples are a way to use pre-recorded sounds. There are 90 samples ready for you to jam with, check them all out! Project Directions: Make a sounds using samples. Use everything you know about "play", "sleep" and iterations to make a new beat. See if you can put together everything you know! Example Code: 4.times do sample :loop_compus sleep 2 end |
Intermediate Project: Play it again and again! (functions and MIDI)Background Information:
You can find this lesson in the tutorial, under 5.5 Programming Structures, Functions Project Directions: Define a function using the syntax, "define :Name do" and "end" to end the function. MIDI, or Musical Instrument Digital Interface - The notes range from 0 to 254 and correspond to the frequencies of the MIDI standard. 0 is low pitched and 254 is high pitched. The useful range relates the the piano keyboard from 21 through to 108. For example "play 71" instead of "play :B". Click on the image of the piano to see larger image. Video about "What is MIDI?" Example Project:
define :first_function do sample :ambi_dark_woosh, rate: 0.1 sample :ambi_choir, rate: 0.3 sleep 1 end first_function sleep 1 4.times do first_function end |
Intermediate Project: Morse Code (variables)
Background Information:
You can find this lesson in the tutorial, under 5.6 Programming Structures, Variables Project Directions: Using the code from Morse Code Generator send a message to a friend. Say something nice, or a secret message. Example: message = 'Hi my name is Joy' Hi my name is Joy --> .... .. ---. / -- -.-- / -. .- -- . / .. ... / .--- --- -.-- Extension Activity: Use this Morse Code Translator to encrypt things into Morse code, or decrypt messages using the transcriber. |
Intermediate Project: Looping Live (putting it all together)
|
Background Information: Live looping allows the music to keep playing as you edit your program. It's a well known tool in music production and Sonic Pi offers this feature as well.
Project Directions: With headphones on, copy and paste the starter code below. Keep the beat going and the sounds morphing and changing for 10 minutes. All sounds are good sounds, so just keep going. Starter Code: use_synth :zawa live_loop :starter do play choose(chord(:E3, :minor)), amp: 0.5, releaes: 0.3, cutoff: rrand_i(70, 100) sleep 0.5 end Edit every aspect of the small bit of code again and again. As you morph the code, the sounds will morph too. Keep the beat going. If you don't like it, change it. Add new live_loops and delete them to fade the music in and out. Extension Activity: Calling all musicians! Like Sam Aaron and Ben Smith, see if you can jam together with an instrument and Sonic Pi. |
Hardware Connection: It might get loud
With LittleBits
|
|
|
With Arduino
Hardware and Software are like peas and carrots!
For project directions and ideas please review the video lesson. You can find the code by going to File > Examples > Starter Kit > Light Theremin |
If you are also able to get an 8 ohm speaker there are other exmaples you can use as well, including:
|
|
|
Blended Learning Resources: Music Everywhere
Your browser does not support viewing this document. Click here to download the document.
|
|
|