algoholic_
live-code your sound
// rehearsal/curriculum

$ Curriculum

From your first sound to a full pattern. Each unit ends with a short test.
01
First Sounds
Make noise on purpose. Learn the smallest possible Strudel program.
00/08
listen
Hello, sound()
+5xp · 1m
transform
Try another sound
+8xp · 2m
fill
Pick a sample variant
+8xp · 2m
transform
Try a textural sample
+8xp · 2m
fill
Two sounds in a row
+10xp · 2m
transform
Set the tempo
+10xp · 2m
compose
Your first riff
+12xp · 3m
★ test
Unit 1 Test
pass 3/4
02
Drum Kit
locked
bd, sd, hh, cp — the four letters that built dance music.
00/09
listen
The drum alphabet
+6xp · 2m
transform
Rests with ~
+10xp · 2m
fill
Add the hat
+10xp · 2m
transform
Pick a kit with .bank()
+12xp · 2m
transform
Sample variants on drums
+10xp · 2m
compose
Four-on-the-floor
+12xp · 3m
compose
Boom-bap frame
+14xp · 3m
transform
Different kit, same beat
+12xp · 2m
★ test
Unit 2 Test
pass 3/4
03
Sequences & Rhythm
locked
Brackets, stars, and rests. Make time bend.
00/10
listen
Cycles, not bars
+6xp · 2m
transform
Alternation with < >
+10xp · 2m
fill
Repeat with *
+10xp · 2m
transform
Sub-sequences with [ ]
+12xp · 3m
fill
Nested brackets
+12xp · 3m
transform
Layer with ,
+14xp · 3m
fill
Off-beat claps
+14xp · 3m
compose
Classic house
+18xp · 4m
compose
Imitate Firecracker
+18xp · 4m
★ test
Unit 3 Test
pass 4/5
04
Notes & Melody
locked
Pitch comes in. Pick a synth, give it a tune.
00/08
listen
note() vs sound()
+6xp · 2m
transform
Choose a waveform
+10xp · 2m
fill
Octaves
+12xp · 3m
transform
Sharps and flats
+12xp · 3m
fill
Tame the buzz with .lpf()
+12xp · 3m
transform
Use n() for sample melodies
+14xp · 3m
compose
Drum + bass
+18xp · 5m
★ test
Unit 4 Test
pass 3/4
05
Texture & Shape
locked
Reverb, delay, gain, pan. Make the same notes feel completely different.
00/01
listen
Effects, briefly
+6xp · 2m