~/talk

From Live Code to Sound: Building a Ruby Live Coding Engine

Talkat RubyKaigi 2026 · 2026-04-22..04-24· [ruby, creative-coding]
links:none on file
slides:none on file

Built a Ruby live‑coding engine called Studier RB that ports Studier/TidalCycles patterns into the terminal, uses Parslet to parse mini notation, and reuses last year’s Groovebox Ruby audio engine to output via PortAudio. Timing uses rational positions and a scheduler that queries patterns in 128‑frame subchunks inside a 2048‑frame buffer, avoiding drift. Randomness is deterministic by hashing event start times. Live reload uses the listen gem and keeps the last good pattern on error; tracks can be muted with underscore track, and recording exports WAV.

AI-written summary · about

  1. 0:00Introduction
  2. 1:18Introducing Studier RB
  3. 2:22First Ruby sound demo
  4. 3:48How patterns work
  5. 8:48Time and hops explained
  6. 10:59Scheduling and playback
  7. 13:33Effects and output
  8. 13:58Recap with demo
  9. 14:41Adding harmony and arpeggio
  10. 17:19Live coding in action
  11. 18:49Error handling principle
  12. 20:14Silence is the worst
  13. 21:00Live coding pitfalls
  14. 22:08Deterministic randomness
  15. 22:51Where to try Studier RB
  16. 23:56Hidden track demo
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.