Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

45
Programmazione creativa con Processing di Enrico “Catodo” Zimuel www.catodo.net Digital Festival, 9 Maggio 2013, Torino

description

Che cos’è la programmazione creativa? Durante la presentazione daremo una risposta a questa domanda, evidenziando l’aspetto creativo della programmazione. In particolare, si parlerà del linguaggio di programmazione open source Processing (www.processing.org) e del suo utilizzo per la realizzazione di opere d’arte interattive. Durante l’incontro verranno presentate alcune opere di arte generativa e software art.

Transcript of Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Page 1: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Programmazionecreativa conProcessingdi Enrico “Catodo” Zimuelwww.catodo.net

Digital Festival, 9 Maggio 2013, Torino

Page 2: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Mi presento

● Enrico Zimuel (aka Catodo)

● Programmatore dai tempi del Texas Instruments TI-99/4A

● Docente di arte generativa presso l'Accademia Pictor di Torino

● Scrivo di arte elettronica su aboutart.it

● Ho svolto attività di Ricerca in Algoritmi e Strutture Dati presso l'Informatics Institute dell'Università di Amsterdam

● Software Engineer presso Zend Technologies (Cupertino, USA)

Page 3: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

La programmazione èun atto creativo?

Page 4: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Programmazione

“L'insieme delle attività e tecniche che unapersona specializzata, il programmatore, svolge per creare un programma, ossia

un software da far eseguire ad un computer”

Fonte: Wikipedia

Page 5: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity
Page 6: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Hello, world!

#include <stdio.h> int main(int argc, char *argv[]) {    printf("Hello, world!\n");}

Page 7: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

“L'arte o la capacità cognitivadella mente di creare e inventare”

Wikipedia

Creatività

"Creatività è unire elementi esistenticon connessioni nuove, che siano utili"

Henri Poincaré

Page 8: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Leonardo Da Vinci

Page 9: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Unire i 9 punti con 4 linee continue

Page 10: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Thinking out of the box

Page 11: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Pablo Picasso

Guernica, 3,5 m x 7,8 m, 1937

Page 12: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

La programmazionepuò essere uno strumentoche amplifica la creatività

Page 13: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity
Page 14: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Nella programmazione creatival'approccio non è più top-down

ma bottom-up

Page 15: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Idea (bozza)

Scrivo del codice

Test

Sperimentazione

Page 16: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Condivisione

“Open source, (codice sorgente aperto), in informatica, indica un software i cui autori (più precisamente i detentori dei diritti) ne permettono, anzi ne favoriscono il libero studio e l'apporto di modifiche da parte di altri programmatori indipendenti.”

Fonte: Wikipedia

Page 17: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

La tecnologia ci viene in aiuto

Page 18: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

La programmazioneè un'attività complicatariservata a pochi eletti?

Page 19: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Date un'occhiata qui:www.codeclub.org.uk

Page 20: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity
Page 21: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Chiunque può iniziarea programmare un

computer !

Page 22: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Arte e programmazioneArte e programmazione

Page 23: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

L'arte generativa è una pratica basata sull'impiego di un sistema, caratterizzato da un certo grado di autonomia e in grado di generare, in maniera parziale o totale, un

prodotto artistico

Fonte: Philip Galanter “What is Generative Art? Complexity Theory as a Context for Art Theory”, 2003

Arte generativa

Page 24: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Applicazioni dell'arte generativa

● Arti visive● Musica● Computer grafica● Design, architettura (design parametrico)● Moda● Cinema, Pubblicità (effetti speciali)● Video performance (Vj, video mapping)

Page 25: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Alcuni esempi diarte generativa

Page 26: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

W. A. Mozart

● Gioco musicale con i dadi di Mozart, Musikalisches Würfelspiel (1757)

● Generare una composizione musicale lanciando dei dadi

● Si lanciano dei dadi per generare una serie di numeri casuali che corrispondono a dei minuetti prestabiliti (tramite una tabella)

Page 27: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

John Cage

● John Cage (1912 - 1992), musicista americano pioniere della musica sperimentale

● Utilizzò tecniche generative nei suoi lavori armonici, proporzioni derivate dai Ching, musica aleatoria (aleatory music o chance music)

● Pioniere della tecnica del piano preparato (prepared piano)

Page 28: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Brian Eno

● Brian Eno, musicista inglese, il primo ad utilizzare il termine musica generativa

● Discreet Music del 1975 è il primo album ad utilizzare tecniche generative (furniture music)

● Scape, Bloom, progetti software con Peter Chilvers per sistemi iOS (iPhone, iPad, iPod touch)

Page 29: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Desmond Paul Henry

● Desmond Paul Henry (1921–2004), artista inglese precursore dell'arte generativa con macchine autocostruite

● Collaboratore con la cattedra di filosofia dell'Università di Manchester

● Computer analogici (analog computer), “mechanical fractals”

Page 30: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Desmond Paul Henry

Immagine prodotta con Drawing Machine 1,inchiostro su carta, 1962

Page 31: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Manfred Mohr

● Pioniere dell'arte digitale, ha realizzato il suo primo programma di disegno per computer nel 1969

● Studio delle forme geometriche elementari (linee, rettangoli, cubi) con l'ausilio di numeri casuali

Page 32: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Marius Watz

Oggetti parametrici, varie dimensioni (base di 14x14x14 cm). ABS plastica, stampa 3D con Makerbot Replicator.

Page 33: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Neri Oxman

Corsetto/armatura2012, Materiale digitale

Centre Pompidou, Parigi

Iris van Herpen, stilistaNeri Oxman, Julia Koerner,

designer Settimana della moda Parigi, 2013

Page 34: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Daniel Franke & Cedric Kiefer

unnamed soundsculpture,Trailer for ImPulzTanz Festival, 2012 - http://vimeo.com/44812164

Page 35: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Yuri Vishnevsky

Silk - http://weavesilk.com/

Page 36: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Software art

Page 37: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Jaromil

ASCII Shell Forkbomb, 2002http://jaromil.dyne.org/journal/forkbomb_art.html

Page 38: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Nick Montfort et al.

10 PRINT libro su un programma per C64 di una linea, 2012http://10print.org/

Page 39: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

L'opera d'arte è il softwareo il risultato della sua

esecuzione?

Page 40: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Processing

Page 41: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Processing

● Linguaggio di programmazione per creare immagini, animazioni ed installazioni interattive

● Open source, basato su Java

● Disponibile per GNU/Linux,Mac OS X, e Windows

● Ideato nel 2001 da Casey Reas e Benjamin Fry del MIT Media Lab

Page 42: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Processing

● E' uno dei linguaggi più utilizzati tra gli artisti di arte generativa

● E' facile da utilizzare

● Può essere utilizzato anche da neofiti della programmazione

● Disponibile gratuitamente su www.processing.org

Page 43: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

DEMO

Page 44: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Per approfondire

● Hello World (video), http://vimeo.com/28499650

● The Art of Creative Coding (video), http://www.youtube.com/watch?v=eBV14-3LT-g

● Stop drawing dead fish (video), http://vimeo.com/64895205

● The Nature of Code (libro), http://natureofcode.com/

● 10print.org (libro), http://10print.org/

● Processing, http://www.processing.org/

● Fun programming, http://funprogramming.org/

● Code Club, http://www.codeclub.org.uk

Page 45: Enrico Zimuel - Programmazione creativa con Processing - Digital for Creativity

Grazie!

Informazioni e contatti:

www.catodo.net

[email protected]

@iamcatodo