Over the past couple of weeks, Nicole and I have been preparing for a workshop for the upcoming Scratch Conference at MIT Media Lab around programming paper circuits. We started to experiment with these ideas a few months ago when we hosted a BAME meetup for a half-baked smorgasbord of programming provocations.
As we've continued refining the materials, tools, and prompts for tinkering with scratch, we've focused on paper circuit explorations as a way to introduce both the scratch programming language and arduino connections. And as we investigate the ideas around computational tinkering, we are trying to think about compelling outcomes that require programming to function. To this end, I got interested in investigating sound sensing and music visualizers and made a series of prototypes as my understanding developed.
The first thing that I made was a traditional paper circuit with a shared negative connection copied from a design that I saw on Becca Rose's blog.
This pattern got me thinking about those little sound visualizers on stereos and I put together another version of the circuit with different colored lights.
I used scratchx arduino extension, an experimental version of the block based programming language built by the scratch team, to program the paper circuit. Nicole mounted the arduino boards on wooden blocks and connected the pins to copper nails to facilitate easy connections to the paper circuit projects.
I wrote a code that used the microphone on my computer to sense volume and connected the series of lights so that the bar increased with the volume. After a little tweaking to change the brightness and delay on the lights, I was happy with how this worked.
Nicole suggested that we try to make some less linear designs so I constructed a more complicated and organic circuit. It was nice to switch back and forth from the programming to the paper circuit construction with the idea that I could test out a new design with the same code.
IMG_5877 from The Tinkering Studio on Vimeo. I cut our a sunburst design from beetleblocks and added a vellum backdrop to allow for color blending and mixing. I was amazed with how fast it was possible to create a really compelling art piece using these simple materials for tinkering.
As we continued exploring the ideas around programmed paper circuits, Nicole and I tried making other examples incorporating elements of collage, narrative, and storytelling. I made a card with three robots and returned to the idea of sounds visualization. I tried something that was more complicated from the programming side, with each robot only lighting up with it's own sound.
It required creating three sprites each with separate variables and broadcast messages (although maybe there are easier ways to accomplish the same outcome). It took about forty-five minutes for me to figure out the program, but I was really happy when it finally worked.
The robot coding project represented a lot of iterations and ideas around the same theme. To me this both emphasizes the possibilities for going deep with the ideas and materials but also the necessity with starting simple with low threshold points of entry. As we continue to develop the activity, it will be important for us to remember our process as learners in these activities, starting small and not expecting complex designs as we get started. In the next post I'll share some of the other insights we've gathered as we've started collecting materials and trying the activity with our colleagues in the learning studio.