I recently finished an 8 week Sonic Pi program with 6 students in years 5-6, and wanted to share some key learnings with the community here.
In case you’re interested to hear from the students themselves, I made a video where they share their journey and the impact it made!
Upon reflecting, here’s my 3 highlights:
Music fusion - go STEAM!!!
When it came to creating their own song, it was so important to have musical input from someone who has the expertise. I found if I started with too blank of a canvas, the students can get stuck on what to do.
Having guidance from a music teacher makes a world of difference - to working out what chords and notes might work, on how to line up the beats, bass and melody, or what synth types might work well.
This was really key to build and maintain momentum when creating their own songs, and shows the cross-department collaboration and synergy between the tech and music worlds.
Collaborate with and involve other departments in engaging students with coding - it creates so many more possibilities!
Collaboration for the win!
During the first 5 weeks, they learnt the coding fundamentals like loops, conditional statements, and concurrency. Then, it was time to team up and make their own song.
The students were working on standalone Raspberry Pis with no internet connectivity given the infrastructure constraints. With this in mind, I gave two options of working together on one Raspberry Pi, or working independently on different parts of the song and merging it at the end via a USB key.
I was excited to see one group (on their own accord!) grab an audio splitter and plug two keyboards and mice into the same Raspberry Pi!
It was a wonderful example of teamwork - they could both code and listen to the same piece at the same time! They also had to work out how to integrate their code bases together. (just getting them ready for source control!!)
Another highlight was seeing some of the students help others troubleshoot their code - it demonstrated a deep understanding and sharing of knowledge, which are all wonderful and important qualities in life.
Coding together is more fun, and also builds other valuable life skills!
Understanding the "why"
I’m not big on the idea of the students just memorising how to type out the lines of code perfectly and it “works”. To me, that’s like learning how to do maths equations without understanding how to apply it to a problem.
When we’d go through content like loops, variables, functions, and comments, I constantly re-enforced how they made the code easier to read and maintain. I wasn’t sure if these principles would be seen as boring, but I was super happy to see these points hit home for the most part.
Hearing them retain those principles and be able to articulate how having less lines of code could make it easier to change things, or only needing to change something once compared to many times was “music to my ears” (pun fully intended!)
In addition, commenting is also a great application of English/literacy to make it clear on what the code is intending to achieve, and again it was awesome to see them understand and embrace it.
Sonic Pi is just awesome on so many levels!!
Thanks a million!!!
I had such a terrific experience seeing the students learn, grow, express their creativity and very importantly, have lots of fun! It was incredibly rewarding to also hear how happy the parents were, as well as the school teachers.
Very thankful again to @samaaron for making this possible!
Merry Xmas everyone!!