Amina

After about two weeks without opening Sonic Pi, I went back to writing a few lines of code. I started with the vinyl_hiss sample, and then somehow I was reminded of the structure of amino acids. I began naming variables and loops after molecular terms I was familiar with – simply letting something I’d once learnt seep into the creative process. Not to create a scientific sonification Amina The Code # title amina # by mus use_bpm 112 Hydrogen = ring(0.2, 0.4, 0.3, 0.5) Carboxyl = ring(0.1, 0.2, 0.3, 0.4, 0.5) alpha_c = chord(:g4, :m9) beta_c = chord(:c4, :dom7) gamma_c = chord(:d4, :m9) delta_c = chord(:f4, :maj7) Carbon = ring(alpha_c, beta_c, gamma_c, delta_c) live_loop :hydroxyl do sync :bar h = Hydrogen.tick set :H, h sample :vinyl_hiss, amp: h sleep 1 end live_loop :oxygen do sync :bar sample :bd_jazz, amp: 0.6 sleep 0.5 sample :elec_blip, amp: 0.8 sleep 0.5 sample :elec_snare, amp: 0.6 sleep 0.5 sample :elec_blip2, amp: 0.8 sleep 0.5 end live_loop :oxygen_hh do sync :bar 4.times do sample :hat_tap, amp: rrand(0.8, 1) sleep 0.3 sample :elec_tick, amp: rrand(0.6, 0.8) sleep 0.7 end end live_loop :carbon do sync :bar with_fx :wobble, phase: 2, wave: 1, mix: 0.65 do use_synth :rodeo play Carbon.tick, amp: get(:H) + 0.5 sleep 4 end end live_loop :r_group do sync :bar r = Carboxyl.tick set :COOH, r with_fx :lpf, cutoff: 65 do if one_in(2) sleep 1 else use_synth :tb303 play scale(:d2, :minor_pentatonic).choose, amp: r sleep 1 end end end live_loop :nitrogen do sync :bar use_synth :beep play scale(:f4, :major).choose, amp: get(:COOH) + 0.5 sleep [0.5, 1, 1.5].choose play scale(:d4, :minor).reverse.tick, amp: get(:H) + 0.3 sleep [0.5, 1.5, 2].choose end live_loop :hydrolysis do sync :bar with_fx :lpf, cutoff: 75 do use_synth :rodeo play scale(:d3, :minor).tick, amp: get(:H) sleep 2 end end live_loop :a do cue :bar sleep 4 end

November 4, 2026 · mus

From Sounding Notes to an Interconnected System

Notes on learning about shared state in Sonic Pi: from independent live_loops to loops that read and write state through set and get.

September 28, 2026 · mus

My Birthday Song Is a Work by Claude (Debussy, Not That AI One)

Arabesque No.1 - Claude Debussy I was listening to Deux Arabesques, L. 66 by Claude Debussy, and suddenly wondered: can I claim Arabesque No. 1 as the birthday song of a seasoned loner? Probably only I would do that. ...

July 18, 2026 · mus

On Flowers, Laufey, and Questions

Listening to: Laufey — Questions for the Universe I did not really understand the whole lyrics when I first listened to this song. Maybe that was exactly why I caught its atmosphere before its meaning. But perhaps I understood a little: Laufey seems to be expressing doubt and confusion about love, life, and herself. ...

June 16, 2026 · mus