Foundations in Interactive Art and Design
"It is not a question of real versus virtual but of understanding how we live rather than simulating the where." -- John Canny and Eric Paulos
"...an interface is not an image. it can be a plug, the ringing of a telephone, some push buttons, or the parameters of a program. it is not a one-to-one simulacrum, but a one-to-one-to-another-one transmission of parallel streams, a process of translation between different levels of code." -- Pit Schulz
Class Policy
Attendance is mandatory, role will be taken at the beginning of each class. Do not arrive late or leave early. All reading and projects must be handed in on time.
Course Objectives
The course stresses the translation of general cognizant skills into creating virtual and real metaphors that invite participation by viewers. We will begin by thinking and making observations about the real space around us and move towards creatively weaving original observation and information into rich visual allegories that portend toward new forms of narrative. The course serves as an introduction into computer programming for visual artists. Using the open source programming environment Processing artist students will utilize code as a visual medium.
Course Work
-
The class reading and assignments will be divided into the following topics:
- Theoretical perspectives on human-computer interaction: Read assigned essays
- Introduction to programming skills for computer-based interaction: Maintain an active sketchbook
- Computer interaction in contemporary art and design: Artist presentation and exhibition trip
-
The class will consist of:
- Online Processing Sketchbook, 40% of final grade
Maintain a website for this course to publish all your assignments and source code. - Final Project on line or as installation…30%
- Brief reading responses…5%
For each reading assignment, write a brief reaction to the reading and post it to your class page - Attend two artist lectures…5%
There will be two artist lectures Feb.28 and March28, attendance is mandatory - Artist Presentation…10%
Choose an artist who uses programming in her/his work, present and discuss the work - Visit an exhibition and write a review…10%
Make a trip to one or more of the following exhibitions: Design Triennial 2006 at Cooper-Hewitt National Design Museum Dec.8–July29, Manhattan; The Museum of the Moving Image, Queens; Networked Nature at Foxy Productions, Jan.11-Feb18, Manhattan; Urban Hacking at Eyebeam, March1-April7, Manhattan
-
Sketchbook and Final Porject will be graded based on:
- Technical Understanding 33.3%
- Aesthetic Value 33.3%
- Content Presented and Originality 33.3%
Course Readings are online
Weekly Schedule
Week 1
Demo: Access your TCNJ web space, create a basic page with a table or css class divs to organize sketch book samples and written course work.
What is programming and how have artists used it?
Introduction to the Processing Environment: Open, Save; Run; Sketchbook; Exporting
Opening and compiling examples included with Processing
Commenting; Coordinates; Color; Line, Primitives; Drawing Attributes
size()
background()
line()
Iterations and for()
Sign up for artist presentations
Assignment:
Create a website for this course.
Write a one/two page program that instructs another person on a process.
Rework the following sketches to create your own sketch:
Statement and Comments
Points and Lines
Shape Primitives
Vertices
Reading:
A Brief History of Programming Languages
Reas on programming and art
(map of statement)
Suggestion: download processing to your local computer.
Week 2
Intro to OOP
Processing Variables and Datatypes; Relational Operators; Conditional Statements
Exploring Processing
Demo by Tiffany Holmes
Assignments:
Rework the following sketches to create your own sketch:
Variables
Integers and Floats
Datatype Conversions
True/False
Conditionals 1
Conditionals 2
Reading:
Wikipedia intro to objec-oriented programming
Processing defined by Josh Nimoy
Week 3
Processing more Constants and Variables; Iteration: for()
for() loops
while() loops
Demo by Tiffany Holmes
Assignments:
Rework the following sketches to create your own sketch:
Increment and Decrement
Continuous Lines
Iteration
Embedded Iteration
Logical Operators
Reading:
J.C.R. Licklider, Man-Computer Symbiosis (1960)
Week 4
Processing Methods, Functions and Classes
Demo by Tiffany Holmes
Assignments:
Rework the following sketches to create your own sketch:
Functions
Recursion
Recursion 2
Objects
Reading:
Douglas Engelbart, Augmenting Human Intellect (1962) (PDF)
Week 5
Processing Arrays, Constructors, random() and randomness
Demo by Tiffany Holmes
Assignments:
Rework the following sketches to create your own sketch:
Array
Array 2D
Array Objects
Characters and Strings
Reading:
Myron W Krueger, Responsive Environments (1977) (PDF)
Lecture and Workshop with Nic Collins, 12:30-1:20pm Lecture in 101 Science Complex followed by 1:30-4:30 Workshop, attendance required
Week 6
Input
Assignments:
Rework the following sketches to create your own sketch:
Mouse 1D
Mouse 2D
Click
Mouse Signals
Interpolate
Constrain
Storing Input
Keyboard
Reading:
Bill Nichols, The Work of Culture in the Age of Cybernetic Systems (1988) (PDF)
Week 7
3D Processing
Assignments:
Rework the following sketches to create your own sketch:
Primitives 3D
Vertices 3D
RGB Cube
Reading:
Sonambiente, Sound Art Festival Review 1
Sonambiente, Sound Art Festival Review 2
Sonambiente, Sound Art Festival Review 3
Sonambiente, Sound Art Festival Review 4
Week 8
ESS: Audio with Processing
Reading:
Golan Levin, Computer Vision in Interactive Art (1988) (PDF)
Lecture by Ricardo Miranda, 2-3:20 Library Lecture Hall, attendance required
Week 9
Connecting Processing to USB devices: webcam, game controller
JMyron (WebCamXtra)
Reading:
Interview of Ken Rinaldo
Week 10
Constructing Final Project
Reading:
Interview with Tom Igoe
Week 11
Constructing Final Project
Reading:
Interview with Marie Sester
Week 12
Constructing Final Project