Un’introduzione a ChucK

L’introduzione dei computer in ambito creativo ha portato a un’evoluzione del significato abitualmente attribuito ai termini artista e musicista: il computer infatti, per moltissimi performer, è diventato indispensabile sia durante la fase creativa che live; ma possiamo davvero definirci «creativi» e non semplici «utilizzatori» di tecnologie sviluppate da altri?

Rispondere a questa domanda potrebbe non essere semplice e potremmo rischiare di finire in un loop nel caso in cui non fissassimo dei punti fermi: lo scopo di questo post (e di quelli che seguiranno) non è certo quello di spiegare come costruire un computer e programmare da zero un sistema operativo bensì di invogliare a spingersi un po’ più in profondità rispetto a quello che, normalmente, accade quando fruiamo di un programma di questo genere.

Utilizzare strumenti creati da altri è certamente una scorciatoia per realizzare velocemente le idee che abbiamo in mente ma questo comporta, necessariamente, rispettare dei limiti che ci vengono imposti da chi quel software l’ha creato. Alcuni artisti non amano avere questo tipo di barriere e, quindi, si sono rivolti al mondo della programmazione per poter analizzare più in profondità le possibilità che la tecnologia oggi può offrire.

Avere maggiore controllo sulla tecnologia ci permette di abbattere anche le barriere “di genere” e ci consente di unire più ambiti artistici. Uno dei maggiori trend in ambito sia tecnologico che musicale degli ultimi anni è proprio quello di combinare performance musicali ad altre discipline creative: danza, animazione, computer grafica, design, installazioni, ecc…

Cos’è ChucK?

ChucK è un linguaggio di programmazione open-source per sintetizzare suoni e creare musica in real-time sviluppato da Ge Wang, professore associato alla Stanford University e fondatore della start-up Smule (Ocarina per iPhone). A differenza degli altri linguaggi (CSound, SuperCollider, PureData e Max/MSP), ChucK si basa su un concetto fondamentale: il tempo. Come vedremo nei post che seguiranno, quando scriviamo un programma in ChucK dobbiamo sempre fare riferimento al tempo che, scorrendo, ci permette di generare suoni o sintetizzarli.

ChucK è un linguaggio di programmazione testuale; questo significa che per utilizzarlo dovremmo scrivere righe di codice, un modo davvero inusuale di fare musica. Personalmente l’ho trovato molto stimolante perché permette di approcciare un problema comune con una prospettiva diversa. All’inizio farete un po’ più di fatica ma, una volta superati i primi scogli, vi assicuro che vi divertirete.

Alcuni esempi

Per cominciare

ChucK è completamente gratuito; il primo passo da compiere è scaricare l’applicazione a questo indirizzo (è disponibile per Mac, Windows e Linux).

Lo scopo di questo post era introdurre ChucK; l’intento generale è quello di scrivere  nel corso delle prossime settimane e mesi una guida in italiano sull’utilizzo di questo linguaggio di programmazione.

Risorse

Per chi volesse partire “da subito” consiglio le seguenti risorse:

ChucK Documentation:
http://chuck.stanford.edu/doc/

Introduction to Programming for Musicians and Digital Artists:
https://www.coursera.org/course/chuck101

Programming for Musicians and Digital Artists (book):
http://www.manning.com/kapur/