A few thoughts about Pure Data
June 11, 2014
Last night I went to workshop called something like "Matter into Music" at ITP CAMP. It was a workshop about using Pure Data to create musical instruments (made of Arduino and sensors).
I think of Pure Data is the open-source (ie FREE) version of MaxMSP, a similiar looking platform(?) for artsy multimedia programming. Using graphical patches of blocks to get a computer to do something is a mode of progamming that intrigues me. It's different from what I do day to day and I figured it would a good change of pace.
At first I didn't really understand why non-programmer types would choose PD over something like Processing or OpenFrameworks. I suppose a visual representation of functions, outputs, inputs is more accessible than a wall of text.
I found myself a bit lost in the beginning. A couple of points for me:
- the documentation for PD is inconsistent and not really accessible, unlike the Ruby on Rail Guides and the documentation for Polymer.
- the names of blocks used in created patches (ie apps) are obscure. Like there is one object called "Message", which I thought would be like a
console
object. Nope! It's more like an input that sends configuration to the patch.
I wonder if memorizing the documentaiton of a new programming language would make learning it better? Like would knowing all the methods available for use would make the language easier to use?
Another reason why I got lost is that the workshop also dealt with synthesizing sound. Terms like osc
, phasors
got tossed around. We used things like multipliers to get the computer to bleep boop, and plugged blocks into something called dac
(Digital audio control?). Unfamiliar territory for me.
I didn't really build anything during the workshop; I tinkered more than anything else, but I think Pure Data is something I'll definitely look into more in the future.
Something that intrigued me was the Satellite CCRMA. One thing I didn't like about musical intruments demo'd in the workshop, was that they were still connected to a clunky laptop. With Satellite, you can load the environment on a Raspberry Pi, connect your instrument and go.