Restoring and MIDI-Fying a Baby Grand Piano
My parents bought a used Disklavier in the 90s that had mostly just been furniture, since floppy disks went obsolete.<p>A few years ago, my dad found a Bluetooth adaptor for it, but the process of streaming songs to it was a convoluted mess that involved downloading MIDIs, putting them in Dropbox, opening them on an iPad in a different app, etc.<p>I was home for the holidays that week, so I threw together a Chrome extension that streams songs with WebMIDI:<p><a href="https://github.com/appsforartists/midicast" rel="nofollow">https://github.com/appsforartists/midicast</a><p>Super fun project.  Far from perfect, but it's neat to programmatically control a musical instrument.<p>Gave me a chance to try the Cycle architecture too, which works really well for a Chrome extension.  Chrome extensions are all about message passing between various contexts.  Cycle's reactive model abstracts all that away, so you don't have to think about which piece is running where - you just describe how data gets transformed as it flows through the system.