Electronic Media Studio II (EMS2) is an introduction to software programming and physical computing within the context of the arts. In this course students develop the skills and confidence to produce interactive artworks using audiovisual, networked and tangible media. Our semester will introduce students to three widely used toolkits for arts-engineering: Processing, Arduino, and Max/MSP/Jitter.
Time: Tuesdays/Thursdays, 1:30pm-4:20pm
Location: CFA-318 (Mac Cluster)
Course Number: 60210-C (Art)
Instructor: Prof. Paolo Pedercini (paolop andrew…)
Office: CFA 419A – 4th Floor
Office hours: By appointment
Part I: Creative Coding (Processing)
What is new media art? Intro & Syllabus. How to use the class blog.
Hello world: the Processing IDE, compiling and publishing. Open processing website.
Assignment: Instructional drawing.
Drawing machines: From Tinguely to Cory Arcangel. A brief history of computer art.
Elements of programming, Syntax, functions, arguments, states, static drawing, Coordinates, lines, primitives, colors. Variables.
Assignment: Draw a face using at least 10 graphic elements
Interactive like a banana: Open and closed interactivity. Variability in new media.
Dynamic drawing, setup and draw, mouse input, blocks.
Assignment: Starting from the provided framework, make an image (face or other) that responds to the microphone activity.
Artists making tools: Autoillustrator, users as participants
Making things move, random function, variables + draw cycle.
Assignment: Make a mischievous drawing application
20 GOTO 10: Op art, Modularity, repetition, recursion.
Iteration: for loop, functions.
Assignments: 1) Wallpaper: create a pattern procedurally using iteration (and randomness if you want) and Generate a pdf. 2) Order vs. Chaos sketch 3) Trippy mandala.
Potential literature: generative poetry, experimental typography.
Arrays, strings, text, Geomerative lib.
Assignments: 1) Generative text 2) Typographic composition.
Designing information: transcoding in art, information visualization.
Assets, transformations, loading bitmap images, scale, rotation. and “timers”
Date and millis: timed behaviors.
Complex != difficult: generative art, emergence, artificial life.
Intro to OOP: classes, objects, arrays of objects.
Assignment: modify the basic particle system code and make something pretty.
Game luddites: Game art, mods, experimental game design.
Hacking, classes, keyboard input.
Assignment: 1) Breaking Breakout – modify the code of the assigned game and turn it into an artworks 2) Start from a software toy and create a game around it.
Part II: Physical Computing (Arduino)
Light Emitting Art
Elements to electronics, Arduino, breadboard, LED, resistors, hello world of analog circuits.
Assignments: Blinking LEDs: Pitetsbkrrh morse code, Knight Rider.
Digital input: Pushbuttons, anti-bouncing, Digital input to digital output.
Sensors to Analog Output speaker, poor man’s Theremin.
Analog Input and Output: potentiometer, servo, sensors.
Physical interfaces: alternative interfaces in game art
Arduino to Processing, Firmata
Assignment: Make a Processing sketch controlled by a sensor
Kinetic art starter kit, Actuators, DC motors, laser cutting
Assignment: Make an automaton using laser cut components OR an “Artbot” a machine that produces some kind of work of art.
Robots taking over the (art)World
Autonomy, awareness, internal states, randomness
Assignments: Make “social robot” with a life-like behavior exploiting the ELIZA effect
Networked object, internet of things, tweeting things and Tweeting Art
Twitter + processing + arduino, Twitter API (hopefully), Flickr API, basic parsing
Assignment: Make a object that bridges the local space (sensor/actuators) to the global sphere (twitter/Flickr).
Looking Outwards: Check the archives of the websites linked here on the left column. Find a project you really like and review it on this blog.
Blue Sky Proposal: imagine you are a media artist with a big budget. Your goal is to make a proposal for an art piece, either a gallery installation or a work in a public space. Write description and statement and prepare convincing visuals, schemes and/or mock ups that describe the project in action.
Part III: Data flow (Max MSP)
To be defined :)