A friend invited me to a design night. This actually happened twice, exactly 1 month apart, from two different friends, in two different cities, London and NY. These events were primarily focused on (digital) product design with people presenting their work. On both of these nights, one of the demos was music-adjacent.
I had a small gripe with them. They were talking taking musical concepts, like scale progressions, sequencers and beats, and applying them to product design. For example, thinking about animation keyframes like a beat, or typography scales like musical scales.
During the whole thing, I was hoping they would explore a more interesting area: the irregularity of music. I was thinking about it from my perspective as a drummer, there is lots of precision to drumming, but my favourite part is being able to work around this precision.
A few examples are gospel chops, they sometimes sound ridiculous, completely out of time like wait how are they pulling this one off, but somehow they catch the beat again and its very satisfying to watch/listen. Same goes for if you've ever been with a newbie to improv jazz, you'll see that confused look on their face, like wtf is going on, can these people even hear each other. Even on a simple 4/4 beat (Billie Jean), there are subtle changes in dynamics and tone, both intentional and unintentional (it is really really really hard to sound as perfect as a computer.)
So, back to product design, I found when expressing design in code, you are subject to a lot of regularity and determinism. How can we introduce non-determinism to make it feel more natural. I would get pretty bored of listening to 4/4 from a drum machine, but I could probably listen to someone playing 4/4 for an order of magnitude longer.
AND SO MY IDEA was to build a non deterministic sequencer, where you define a beat and each cell has an attached probability of playing or not. Bonus points for ghost notes, tone variance, volume variance! I basically wanted to define a rhythm, and be able listen to it for an extended period of time without getting bored (strange, i know.)
For lack of a .synth or .nd or .th TLDs, I had to settle for stochastic.fm, which I didn't hate.
The backend representation of these were json-esque, so I tried to see if Claude can translate my ideas to the sequencer. I was delighted to see that it could not. Meaning, my weird polymath ideas went over the model's head, making my hand-rolled beats feel even better.
Also, had fun designing this with pure HTML/CSS/JS and no frameworks. I could not resist adding a little social layer.