Hi
my name’s Brendan, based in N.I., I’ve been using music tech since Audiomulch and Ableton Live 1. I hold a PhD in interactive music techology and will shortly be teaching 11 - 14 year olds Sonic Pi.
I’d really appreciate some suggestions for simple nursery/pop/rock tunes, which I will be integrating into the scheme of work I’m currently writing. The following just came off the top of my head, any others you think might fit in?
Freres Jacques (canon), Happy Birthday To You, Love Me Tender,
Stand By Me, My Girl, Dock Of The Bay, 7 Nation Army, Come As You Are,
T. Swift Never Getting Back Together, Hallelujah . . .
Thanks for reading
Brendan
1 Like
emlyn
February 20, 2024, 5:50pm
2
Here are a few of things I’ve created in the past, that may give you some ideas.
There are links to the code if you go through to the Soundcloud pages.
1 Like
These are great! Can’t wait to see the code, I love the guitar strumming effect you achieved.
Many thanks
1 Like
emlyn
February 20, 2024, 11:20pm
4
Glad you liked them :-). Here are the links to the code - some of them were written quite a while ago so hopefully they still work on the latest Sonic Pi.
# Eye of the Tiger (intro) - Survivor
use_debug false
use_bpm 102
with_fx :reverb, room: 0.8, amp: 1 do
at 0 do
use_synth :pluck
with_fx :compressor, lpf: 70, amp: 0.2, amp_slide: 6 do |fx|
control fx, amp: 1
176.times do
amps = (ring 1, 0.5, 0.5, 0.5, 0.75, 0.5, 0.5, 0.5)
play :C2, attack: 0.05, release: 0.4, amp: amps.tick
sleep 0.25
end
end
end
at 6 do
This file has been truncated. show original
smoke.md
# Smoke on the Water
## - Deep Purple
### on Sonic Pi
A self-contained version of what I have in my [sonic-pi-experiments](https://github.com/emlyn/sonic-pi-experiments/blob/master/covers/Deep%20Purple%20-%20Smoke%20on%20the%20Water.rb) repo.
It uses my [play-helper](https://github.com/emlyn/sonic-pi-experiments/blob/master/helpers/play-helper.rb) and [drum sequencer](https://github.com/emlyn/sonic-pi-experiments/blob/master/helpers/sequencer.rb) helpers, so here I've pasted them into the buffer so anyone can run it.
Here's a recording of it on [Soundcloud](https://soundcloud.com/emlyn-corrin/smoke-on-the-water).
smoke.rb
# Smoke on the Water - Deep Purple
# Self-contained version of https://github.com/emlyn/sonic-pi-experiments/blob/master/covers/Deep%20Purple%20-%20Smoke%20on%20the%20Water.rb
use_debug false
use_bpm 110
#### Some helper functions
def pl(notes, sus: 0.5, rel: nil)
rel ||= 1 - sus
This file has been truncated. show original
wonderwall.md
# Wonderwall
## - Oasis
### on Sonic Pi
A self-contained version of what I have in my [sonic-pi-experiments](https://github.com/emlyn/sonic-pi-experiments/blob/master/covers/Oasis%20-%20Wonderwall.rb) repo.
It uses my [guitar](https://github.com/emlyn/sonic-pi-experiments/blob/master/helpers/guitar.rb), [play-helper](https://github.com/emlyn/sonic-pi-experiments/blob/master/helpers/play-helper.rb), and [lyrics](https://github.com/emlyn/sonic-pi-experiments/blob/master/helpers/lyrics.rb) helpers, so here I've pasted them into the buffer so anyone can run it.
Here's a recording of it on [Soundcloud](https://soundcloud.com/emlyn-corrin/wonderwall).
wonderwall.rb
# Wonderwall - Oasis
# Strum a chord with a certain delay between strings
define :guitar_strum do |chrd, dt|
in_thread do
play_pattern_timed chrd.to_a.drop_while{|n| [nil,:r].include? n}, dt
end
end
define :strum do |chrd, pattern=nil, t=0.25, dt=0.025|
This file has been truncated. show original
let-it-be.md
# Let it be
## - The Beatles
### on Sonic Pi
A self-contained version of what I have in my [sonic-pi-experiments](https://github.com/emlyn/sonic-pi-experiments/blob/master/covers/The%20Beatles%20-%20Let%20It%20Be.rbb) repo.
It uses my [guitar](https://github.com/emlyn/sonic-pi-experiments/blob/master/helpers/guitar.rb) helper, so here I've pasted it into the buffer so anyone can run it.
Here's a recording of it on [Soundcloud](https://soundcloud.com/emlyn-corrin/let-it-be).
let-it-be.rb
# Let it be - The Beatles (guitar)
# Uses the guitar helper
define :guitar do |tonic, name=nil, tuning=:guitar, debug=false|
tunings = {
:ukulele => [:g, :c, :e, :a],
:guitar => [:e2, :a2, :d3, :g3, :b3, :e4]
}
tuning = tunings[tuning] || tuning
This file has been truncated. show original
use_bpm 176
define :s do |t|
sleep t
end
define :p do |n, r, a=1|
if (n.respond_to? :each) then
n.each do |i|
play i, release: r, amp: a
end
else
play n, release: r, amp: a
end
end
define :c do |s, n|
control s, note: n, amp: 2, slide: 0.1
end
This file has been truncated. show original
4 Likes
The Clapton-Signe is really nice. Well done!
1 Like
emlyn
February 22, 2024, 6:13pm
6
Thank you, I was particularly pleased with how that came out
xrd
February 22, 2024, 7:12pm
7
Is there any way to follow along with your teaching experiences? I’m interested in teaching my 11 year old as well and would love to know how you approach this topic
you my find useful resources for learning in this post
The Mekackit Course is very useful as a starrting point.
1 Like
If that is at me - I’m currently working on a detailed progressive tutorial and video series, from play/sleep up to DIY functions and SC synths. It’ll take a few more months. Kind of an autodidactic exercise, and to give something back and spread the word.
Stay tooned
1 Like
And of course, Sam himself has released a number of easily accessed papers and articles on Sonic Pi in the classroom.