Pattern thinking and rhythmic idioms
Learning objectives
- learner can articulate what a pattern is and how interference between simple layers creates complexity
- learner can build Euclidean rhythms from two integers in a live-coding tool
- learner can explain why patterns recur at every level of a live-coded piece
Capstone — one whole task that evidences the objectives
Live-code a two-layer groove where a Euclidean rhythm interferes with a second layer to produce a result present in neither, and annotate which structural principle each layer illustrates.
Prerequisite modules
This module builds toward the move that separates a live coder from a step-sequencer user: getting a groove the audience hears as complex out of two lines of trivially simple code. In a Strudel or TidalCycles set — at an algorave, in a practice jam, or on stream — you rarely have time to specify every hit. Instead you lay down a Euclidean rhythm from two integers, stack a second simple layer against it, and let their phase relationship generate the actual music. The capstone asks you to do exactly this, then annotate it: name the structural principle each layer illustrates, proving you can hear and explain the mechanism, not just stumble into it.
The arc starts supported. First internalize the working definition of pattern — structure of the making perceivable in the structure of the outcome — as a test you can apply to your own output. Then drill the Euclidean mini-notation idiom, (k,n) and its pattern-of-parameters extension, until typing a new groove costs nothing; this is the recurring micro-skill the whole task leans on. Next, a guided exercise layers two simple repetitions and listens for the emergent figure neither contains, applying the interference principle. Finally, the unsupported capstone combines all three, with the multi-level view of pattern (from software architecture down to the audible result) framing your annotations.
The four required atoms gate the capstone directly: without the pattern definition, the interference principle, the Euclidean idiom, or the levels-of-pattern concept, either the groove or the annotation fails. The supporting atoms enrich the picture — Spiegel’s transformation taxonomy and its live-coding encodings suggest where to go next, affordance and tool-constraint thinking explain why the idiom shapes your ideas, and the embodied and note-vs-sound perspectives deepen how you listen.
Runnable examples
Generated from the context/ instrument corpus by concept (redistributable idioms only). Do not edit — regenerate with gen-module-examples.mjs.
euclidean-rhythm
s("bd(3,8)")
strudel-0004 · CC0
d1 $ sound "bd(3,8)"
tidal-0004 · CC0
Atoms in this module
Required — these gate the capstone
Supporting — enrichment, not gating
Part of curricula
- Live Coder — zero to performing live-coded music — First Sounds in the Browser required
Unlocks — modules that require this one