Places where my words have somehow appeared:

Audio Developer Conference 2019 co-presenter on MIDI 2

Mix Magazine, on MIDI 2

Music Tectonics Podcast, October 2020, discussing all kinds of future-facing things touching music and tech.

Ableton Producers Podcast, November 2020, on MIDI 2 with Dan Giffin and Moldover

AudioGeek 11 podcast on MIDI 2

The Audio Programmer virtual meetup (slides/voice)

Resolution Magazine piece on MIDI 2. on MIDI 2

MusicRadar on MIDI 2 (this one is especially good)

MusicTech on MIDI 2

Performer Magazine on MIDI 2

Bobby Owsinski’s Inner Circle Podcast (mostly MIDI 2 with some meandering thoughts…)

The Feature Story on MIDI 2

Managing Devices with XML-RPC (Dr Dobb’s, April 2003). First time I was paid to write.

Blog Posts

(Mostly about the JUCE application framework)

MIDI 2.0 Scope (on — overview of a developer tool I created for working with MIDI 2.0 channel voice messages.

Friz and the Illusion of Life , re: a JUCE animation framework I created, also an update that includes a new family of easing curves. .

A C++ Class Factory for JUCE — I needed to be able to instantiate C++ classes at runtime from their name, and didn’t like the approach that most examples use.

An RPC Framework for JUCE — a client needed me to break their existing monolithic application into two separate processes. This post talks about some classes I wrote to handle the communication between those processes.

Developing Audio Applications with JUCE part 1, part 2, part 3. I wrote these when I was working my way through the JUCE documentation, which at the time was spartan, and there weren’t as many excellent tutorials covering this ground as there are now. The code that these posts point at has aged badly, both because it targets a very old JUCE version, and also because there are some approaches taken here that I no longer advocate (don’t use the sample code as an approach for communicating between audio processors and UI code!) As an overall orientation to “these are the big pieces you need to understand and this is how they connect to each other if you want to write an audio host application,” it still mostly holds up.