Mad Railers Meetup at the Library
Sonic Pi: Teaching Kids to Program Music
Sonic Pi is a programming environment for synthesizing sound and music through the Ruby programming language. It was developed to run on the creditcard-sized Raspberry Pi computer, but can be run on any computer hardware or operating system. Sonic Pi was developed with the purpose of teaching music and programming/computing skills in schools.
I am excited about Sonic Pi because presenter Scott Fradkin’s demonstration made programming music through it seem so simple and straight-forward, with immediate results. Sonic Pi solves the programming problem of immediate gratification, which in my opinion is the greatest hurdle for people getting into it. To be clear, I am not musically inclined, and the processes of programming and music-making are both high-level cognitive processes in my opinion. That being said, following the Ruby syntax resulted in one note withing a minute, and two notes shortly after, and then keys and chords, and distortions within 5 minutes. There are a lot of tools available to shape and compose the sounds and music.
I think it is important to consider the alternatives to Sonic Pi for learning programming: Codecademy and Khan Academy, are fantastic options for kids, and I found them enjoyable, but highly structured, and therefore may not feed the motivation to write programs and be too rigid to be autonomous. Learn Ruby The Hard Way is probably the most straight-forward way to learn Ruby, but also the most rote of the options, and does not provide much reinforcement or immediate positive reinforcement. The Great way that Sonic Pi contrasts with these is that I can envision a kid (or adult) building a program and working on syntax for the reward of making music that they can show off to their friends and family, or simply for the intrinsic reward of composing or sounds. Although these other options are good, I think that having a piece of music would be far more rewarding.
Where I am with Ruby and Ruby on Rails
I took a break on learning Ruby on Rails because I got a seasonal retail job that ate my life. When I started my seasonal retail job, I was working my way through the book Rails 4 in Action(Ryan Bigg, Yehuda Katz, Steve Klabnik, and Rebecca Skinner), I had finished the Ruby language course on Codecademy, and I had participated in a Rails Bridge here in Madison WI. I had also gotten about 30% of the way through The Professional Ruby on Rails Developer course on Udemy.