Creative Coding for Interactive Art

Lecture notes and [resources] for the courses I teach at the ITPMA M.A. @UNATC.
Permanent work-in-progress. See my [musings] on what it’s all about.

Fundamentals

Building up a set of skills and tools to start your creative coding practice.

Processing & p5js     Bitsy & PICO-8     Extensions     Python  
Intro to CC for IA   slides Intro to Game Dev   slides Visualization     Practical Python slides
Basics   slides Bitsy and variables   slides Sound     More Python slides
Finite State Machines   slides PICO-8 and FSMs   slides Physical computing   slides [TouchDesigner and Python]  
Loops   slides Functions   slides Feeds, APIs, Node.js   slides    
Arrays   slides Loops   slides Advanced OOP   slides    
Functions   slides Arrays / Tables   slides          
Objects   slides Objects / Metatables   slides          

Real-time systems

Prototyping interactive systems with dataflow languages and game engines. The focus is on nimble, experimental iteration.

Visual programming     Game engines  
[Intro to real-time systems] slides   Debugging and version control slides
[Data and signal flow] slides   [From Processing to Unity] slides
[Control] slides   [OSC in Unity]  
OSC and Node in Max slides   Procedural audio in Unity slides
Signal analysis slides      
Generative processes slides      

Machine learning

Creating rich mappings and outputs using interactive and deep machine learning.

Wekinator     Code     Deep learning    
Intro to ML for IA   slides ml5.js: transfer learning   slides VAEs    
Classification. kNNs   slides Python: numpy, scikit.learn   colab GANs: datasets & training   slides
Regression. Neural nets   slides PyTorch and fast.ai   ipynb [GANs: interactive inference]   slides
Temporal modelling   slides PyTorch: training and editing networks     RNN&co: text   slides
Unsupervised learning   slides       RNN&co: music   slides

Interactive music systems

Tools and techniques dealing with sounds and events in time.

Max for Live     Live coding     Reactive programming    
Intro to IMS   slides SuperCollider   slides Live electronics    
Interactive devices   slides Sonic Pi     Antescofo basics   slides
The M4L API   slides TidalCycles     Advanced Antescofo   slides
Interactive spatialisation   slides       Real-time RNN music    
Creative Coding for Interactive Art - Grigore Burloiu