The code for this episode is available here.

The idea for doing something with bits seemed kind of natural to me as a second episode. After covering what “computation” is, why not cover what computers actually “see” when they run computations?

Given that bits are what makes up everything inside a computer’s software, I wanted a musical topic that was inside every type of music (at least in Western music). Initially I was thinking of doing scales, but as I was developing this idea it dawned on me that there is a very close relationship between semitones and tones (or between half-steps and whole-steps) and the zeros and ones of the binary system.

For the creativity bit, I knew I wanted to construct scales based on randomly sampled binary strings. The most challenging part was trying to come up with an idea to improvise with these randomly sampled scales. I played around with a few ideas (such as playing random notes in the scale, or sampling certain chords randomly), but most of them sounded pretty chaotic. In the end I liked the dreamy effect I got from the triads. I think the particles idea came to me from some animation someone had posted on Twitter, but I can’t remember which.

Acknowledgements

Once again, my siblings Alvaro and Melissa, my wife Michelle, and my friend Ralph gave me great feedback in the initial version of this episode. Special thanks to Alvaro, who caught a “bug” I had in the “cluster triad”, where I played C, C#, and D, instead of the correct C, D, and E.

I didn’t know how to get the assembler code from a C++/Python program, so I asked Twitter. Thanks to all who responded, but especially Willian H. Hsu and my very good friend Mo.

Subscribe to the YouTube channel!.