is really really hard. It is surprisingly difficult to do the same thing over and over again without any variation in speed, volume or tone. Ash Soan is one of the most impressive. The thing I and many others find so hard about it is resisting the temptation for variance itself. If you ever see someone get on a kit and just play bmm tss ka tss on an endless loop, sense danger. It's the equivalent of raw dogging LHR->SYD.
As a drummer myself, as much as I love the precision of drumming, my favourite part is working around the rules and precision.
A few examples are gospel chops, they sometimes sound ridiculous, completely out of time like wait how are they gonna pull this one off, but miraculously they catch the beat and it's so satisfying to hear. This is one of my favourites of Aaron Spears' performances, most famously drummer for Usher.
Same goes for some styles of jazz. If you've ever been with a normie to a jazz thing, or Watermelon Man starts playing from your Spotify, you'll recognise that confused look of disgust on their face, like wtf is going on, are these people tone deaf. This clip of Jacob Collier is also fun.
The actual inspiration for this post, and product, comes from a random design night that my friend invited me to. Four people in London demo'ing a concept/idea they were exploring in the (digital) product design space, eg interfaces and stuff. As if by some strange coincidence, a month later in New York, another friend invited me to a design night, which had the exact same format, and on both of these nights, one of the demos was music-adjacent.
I had a small gripe with them both. They were talking using 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: exploring the irregularity and variance from the patterns of music, and applying that as a concept to digital interfaces.
I find that when expressing design in code, you are subject to a lot of determinism. How can we introduce the 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.
SO MY IDEA was to build a non deterministic sequencer/synth, where you define a beat and each cell has an attached probability of playing or not. Bonus points for ghost notes, tone variance, dynamics variance! I basically wanted to define a sequence, and be able listen to it for an extended period of time without getting bored (strange ik.)
I wanted to do this in pure HTML/CSS/JS without any external packages, so I started by defining raw sounds from scratch (with sine waves and oscillators.) Then, it was a simple sequencer grid with each cell having probability of [0, 25, 50, 75, 100]. The first instance where I went "Woaah" was where I had a sequence that had three hi-hats one after another with 25% probability of playing each. The sequence was playing for a while and then I heard all three play one after another like a roll! It sounded very cool especially as you have to wait for it to play naturally.
This was good enough for me tbh, I used it in this state for a while. I wanted to then "humanise" more, so I added probabilities for ghost notes and tone variance globally and on a per instrument level. I originally wanted the actual defined sound from the synth to change too, but this got too weird too quickly. The rest of it was cleaning it up to make it look nice, and I added a little social to it also.
The backend representation of these files were json-esque, so I thought I'd see if Claude could translate my ideas to the sequencer. I had this idea of a 10/7 rhythm being turned into a Bossa nova beat. I was delighted to hit a wall with Opus 4.6, even with /max reasoning on. Meaning, my weird polymath idea went over the model's head, making me appreciate my hand rolled beat even more.
For lack of .synth or .nd or .th TLDs, I ended up with stochastic.fm.
I think this is one of the more chaotic things I've built. Unlike an LLM's outputs, this felt much more like controlled chaos by design, and it has me interested in extending this concept to product design more generally. I don't have good examples to share yet, but when I do, I'll put them below.