Skip to Content

Learning at the Intersection of Programming and Musicality: MaKey MaKey + Scratch

From the Bullis School Technology Blog, written by Stacey Roshan. Read more of Stacey's posts on her blog and on twitter.

Sound Design and Programming: MaKey MaKey + Scratch Project
 

Sound Design and Programming is an interdisciplinary, project based Upper School course taught by Ms. Stefi Gogerty and Mr. Nathan Stanford. Students learn the fundamentals of music theory and computer programming. Students create instruments by turning everyday objects into touchpads with the use of MaKey MaKey kits. In addition, students diagram popular music and compose their own works using their newfound music theory awareness. Throughout the course, students develop and connect musical ideas to the fundamentals of programming.

This year, as a cumulative project to showcase the connections they had made between music and programming throughout the trimester, Ms. Gogerty and Mr. Stanford had their class use MaKey MaKey's and Scratch to create musical instruments and games. The goal of this project was to have Scratch read from external sensors (in this case, the MaKey MaKey) and create music in response to the signals received.

Objectives:

  • To explore the musical principles of form, rhythm, duration, melody, texture, timbre, composition, and performance
  • To experience the computational and physical principles of sensor interfacing, electrical conductivity, triggering, and event listing.
  • To help students gain an understanding of open versus closed circuits (using the MaKey MaKey) and be able to predict when a circuit is open or closed
  • To use Scratch for students to make a basic event based program
  • To discuss ease of use for a user interface

Prior to this assignment, students created "found objects" instruments. This involved converting everyday objects into musical instruments. Students were asked to re-evaluate the sound properties of objects and also to develop a melody and supporting rhythm to compose a piece in ABA form, a way to identify musical sections and differentiate chorus from verse. Students were also tasked with creating a notation system for time, space and pitch so that another group could read and re-create the piece. This idea of creating a notation system that can be read and understood by any audience is applicable in both music and programming.

Students next created a composition from their digitized "found" sounds. To do this, students recorded sounds made by their found object instrument in Audacity and learned how to edit, layer, duplicate tracks and add effects to create an original composition.

This video captures students working on an original, digitized composition: Using MaKey MaKey to Create Musical Instruments

 

With these two projects completed, students had a sense of musical form, basic music theory and notation and an introduction to Audacity. The next step was for students to create an instrument or game with the MaKey MaKey using Scratch programming. This project used more advanced programming, emphasizing conditional statements, loops, and event handlers. Musically, this prepared students to identify and dissect various types of musical form, recognize melody, accompaniment and structure.

In creating their game or instrument, students explored their passions, whether focused more on programming or musicality. Students were also asked to create a project that would capture the interest of our Lower School students who they would ultimately share the projects with.

Each group had to reach a level of complexity in their projects, incorporating the various programming elements they had learned in the first two months of the class. Each group's journey was unique. Students came up with their own project ideas and their self-propelled ideas lead them to learn advanced programming code in the process. If they wanted to make something happen, they had to figure out how to do it! Ms. Gogerty and Mr. Stanford were there to guide and provide instruction along the way, but students drove the process.

One group chose to create a Whack a Mole Game and in the process discovered that they needed a deeper understanding of Scratch. Equipped with those questions, the learning process began to unfold in a truly authentic way. The students wanted to create an array, though they didn't know that the idea was possible to program. If you look at a whack-a-mole game, it looks like a grid of moles that pop up from their holes at random and the goal is to smack them down. An array is a way to store multiple values in a single variable. So, using an array enables students to create the grid-like structure of a whack-a-mole game. But the students knew what they were trying to achieve. This is where Mr. Stanford stepped in and provided guidance and a multi-day lesson for the group. What they achieved was truly awesome.

This video captures the work's final product: Whack a Mole Game Using Scratch + Makey Makey's

embed code:

The above is a screenshot of the array-type programming structure the students developed

Another group chose to create The Music Glove (a reference to Michael Jackson's famous white glove). They approached the project from the musical side, wanting to focus on major keys, chords and intervals. As the group developed the idea of creating this glove, they began to expand the possibilities, using shifters to change the musical sound and create chords (allowing multiple sounds to be played simultaneously). Much like the Whack-A-Mole group, The Music Glove group had to investigate new tools for programming in Scratch. As their ideas emerged, their understanding of Scratch progressed and in turn new musical ideas emerged. The Music Glove's group developed a visual, tactile and aural presentation perfect for their Lower School audience.

This video capture the share day with the Lower School: video

embed code:

randomness