Dopo tre mesi tra Sonic Pi, Ruby, Rails, JavaScript e Web Audio, chiudo il cerchio con l'idea che li lega tutti: il codice può diventare suono.
Sonic Pi lo fa in Ruby, con play, sample, live_loop. La Web Audio API lo fa in JavaScript, con oscillatori, gain e grafi di nodi. Linguaggi e ambienti diversi, ma lo stesso pensiero: descrivi la musica come istruzioni, e la macchina la esegue.
# Sonic Pi (Ruby)
use_synth :saw
play :e3, cutoff: 90, release: 0.3
// Web Audio (JavaScript) - la stessa nota
const osc = ctx.createOscillator();
osc.type = "sawtooth";
osc.frequency.value = 164.81; // E3
// ...gain e filtro, come abbiamo visto
Cambiano la sintassi e le API, ma i concetti sono gli stessi: forme d'onda, filtri, inviluppi, tempo, ripetizione, casualità controllata. Impararli in un ambiente li rende trasferibili nell'altro.
È esattamente lo spirito del mio progetto Dj_QBIT: fare musica scrivendo codice, e trattare la programmazione come uno strumento creativo, non solo come lavoro. Da sviluppatore, è la cosa più naturale del mondo — e la più divertente.
Grazie per aver seguito questi tre mesi di articoli quotidiani. Ci si sente in cuffia.