La Programació Creativa explora l'ús del codi com a mitjà d'expressió artística i interactiva. Mitjançant JavaScript i la llibreria p5.js, l'alumnat aprendrà a crear visuals generatius, animacions, peces reactives, interfícies experimentals i projectes híbrids que combinen so, vídeo, dades o càmera.
S'introduirà també Processing com a referència històrica del software art, establint ponts entre la tradició del codi creatiu i les pràctiques actuals.
L'assignatura posa el focus en la pràctica, l'experimentació i el desenvolupament d'un llenguatge visual propi, culminant en un projecte final exhibit en format showcase públic.
Professors Titulars
Es recomana tenir coneixements bàsics d'HTML, CSS i JavaScript provinents de Programació de Mitjans Interactius.
No és necessari coneixement previ d'art generatiu, però sí familiaritat amb estructures de control, funcions i manipulació bàsica del canvas.
En acabar el curs, l'alumnat serà capaç de:
- Crear sketches visuals i interactius aplicant conceptes fonamentals de programació creativa.
- Utilitzar aleatorietat, soroll i algoritmes generatius per generar variacions estètiques.
- Integrar diferents fonts d'entrada (ratolí, teclat, so, càmera, dades externes).
- Desenvolupar projectes creatius complets que combinin tècnica, estètica i discurs.
- Reflexionar críticament sobre l'ús del codi com a mitjà d'expressió i com a material artístic.
Els continguts s'organitzen en cinc blocs principals:
**Bloc 1 ? Fonaments de l'art generatiu**
Formes primitives, color, animació bàsica, patrons, atzar i control.
**Bloc 2 ? Moviment, interacció i temps**
Velocitat, física simple, interacció amb input, partícules, soroll Perlin, visualització de so.
**Bloc 3 ? Complexitat emergent i algoritmes creatius**
Recursió, fractals, autòmats cel·lulars (Conway), L-systems, remix creatiu de sketches.
**Bloc 4 ? Interactivitat avançada i mitjans híbrids**
Vídeo i càmera, dades externes i APIs, shaders i efectes visuals generatius.
**Bloc 5 ? Projecte final i exhibició**
Ideació, prototipat, producció i presentació pública.
L'assignatura combina:
- Classes teòric-pràctiques amb demostracions en directe.
- Exercicis curts a classe per consolidar conceptes.
- Pràctiques d'experimentació (una per bloc).
- Treball de laboratori amb desenvolupament incremental de peces creatives.
- Projecte final amb tutories i presentació pública.
La metodologia promou l'aprenentatge actiu, l'experimentació personal i la construcció d'un portafoli creatiu.
- **Projecte final ? 40%** (nota mínima 5).
- **Activitats de bloc ? 30%** (una per bloc, nota mínima 5 cadascuna).
- **Exercicis pràctics ? 15%**.
- **Portafoli ? 5%**.
- **Presentació i defensa final ? 5%**.
- **Participació i implicació ? 5%**.
Lliuraments amb retard tenen penalització d'1 punt per dia (fins a 5 dies).
En recuperacions, la nota màxima és 7.
Es valorarà:
- L'aplicació correcta dels conceptes de programació creativa.
- La qualitat formal i tècnica dels sketches i projectes.
- La creativitat i exploració personal.
- L'ús adequat d'interacció, visualització i algoritmes generatius.
- La capacitat de documentar i analitzar processos creatius.
- La participació en dinàmiques de classe i sessions de feedback.
- D. Shiffman ? The Nature of Code
- C. Reas & B. Fry ? Processing: A Programming Handbook for Visual Designers and Artists
- J. Maeda ? Design by Numbers
- M. Pearson ? Generative Art
- D. Shiffman ? Learning Processing
- p5.js Reference ? https://p5js.org/reference/
- OpenProcessing ? https://openprocessing.org/
- The Coding Train (Daniel Shiffman)
- Exemples i codi docent proporcionats a classe.
- Repositoris i peces de referents com Vera Molnar, Casey Reas, Zach Lieberman o Golan Levin.