Ableton Certified Trainer, Music Technologist, Creative Coder, Educator

Category: Getting started

  • Controlli condizionali: if, else if, else

    Abbandoniamo temporaneamente la casualità generata dalla funzione random(), che abbiamo visto la scorsa settimana, per immergerci nel mondo dei controlli condizionali. Nella vita di tutti i giorni siamo condizionati da scelte: siamo abituati a pensare che se facciamo qualcosa allora accadrà qualcosa di specifico altrimenti (cioè nel caso in cui non si verifichi la condizione iniziale), non succederà nulla. Il nostro […]

  • println() e random()

    println() La settimana scorsa ho accennato alla funzione println(); per mostrarne bene il funzionamento, ho realizzato questo breve video: Il codice di questo sketch è molto semplice: void setup() { size(700, 500); } void draw() { println(“Mouse X: ” + mouseX + ” : Mouse Y: ” + mouseY); } Ho creato una finestra di […]

  • Variabili in Processing II: operazioni matematiche

    Con il post della settimana scorsa, la vostra vita da programmatori ha subìto un cambiamento radicale: imparare a utilizzare le variabili è un notevole passo avanti che apre scenari inediti. Aumentare il valore delle variabili Il mio obiettivo per questo primo esempio è di disegnare un cerchio che, partendo da una posizione predefinita, si muova verso destra. […]

  • Variabili in Processing: creazione e personalizzazione

    Abbiamo già incontrato il termine variabile un paio di settimane fa quando avevo descritto, ad esempio, come utilizzare mouseX e mouseY per rendere i nostri sketch interattivi. Come avevo scritto in quel post: [le variabili sono] dei parametri che possono assumere un valore che può essere cambiato durante l’esecuzione del programma attraverso, ad esempio, semplici funzioni matematiche. Oggi […]

  • Eventi: mousePressed() e keyPressed()

    Un po’ alla volta stiamo rendendo i nostri sketch sempre più interattivi grazie ai movimenti del mouse. Per proseguire il percorso della scorsa lezione e prima di imparare a creare e utilizzare a nostro piacere delle variabili, argomento che verrà trattato la prossima settimana, oggi parliamo di eventi. Per fare un breve recap: abbiamo imparato come utilizzare […]

  • Variabili built-in (mouseX, mouseY…)

    Nell’ultimo post, abbiamo creato il nostro primo programma interattivo sfruttando le potenzialità della funzione draw() che, vi ricordo, viene eseguita in un loop costante a 60fps (di default) dal momento in cui avviamo il nostro programma fino a quando non lo fermiamo. Negli ultimi due esempi di codice che ho postato ho aggiunto, senza dare troppe […]

  • Blocchi di codice e flusso: setup() e draw()

    Oggi introduciamo due concetti di base molto importanti che ci porteranno a realizzare dei programmi interattivi con Processing. Fino ad oggi, ci siamo limitati a scrivere una linea di codice dopo l’altra e abbiamo imparato che quando clicchiamo sul pulsante Run, se non ci sono errori, ciascuna di esse viene processata in ordine dalla prima all’ultima. Gli sketch che […]

  • Esercizio 1: Piet Mondrian

    Ecco una delle possibili soluzioni del primo compito a casa: realizzare uno sketch ispirato alle composizioni geometriche di Piet Mondrian. Come ho già avuto modo di scrivere: Imparare a programmare non significa soltanto studiare, capire la sintassi e copiare-incollare del codice trovato su internet ma anche porsi dei problemi e provare a risolverli autonomamente. Il mio consiglio è, […]

  • Colori RGB

    Nell’ultimo post abbiamo imparato cosa sono le primitive 2D e siamo riusciti a far disegnare al nostro computer alcune semplici forme geometriche sullo schermo. Nel realizzare questi semplici sketch forse qualcuno di voi avrà notato una particolarità: di default Processing colora di bianco l’interno della forma e di nero il bordo mentre lo sfondo dello sketch […]

  • Primitive 2D: point(), line(), rect(), ellipse(), triangle()

    Nel post precedente abbiamo realizzato il nostro primo sketch disegnando una linea sullo schermo in Processing. In questo post farò una panoramica su altre forme di base, chiamate primitive 2D, che utilizzeremo di frequente nei nostri programmi futuri. Cominciare a imparare a memoria i nomi delle funzioni che usiamo maggiormente e la loro sintassi corretta è di fondamentale importanza quando si impara […]