Music 680: Special Topics in Music - Algorithmic Multimedia (Spring 2008)
Wednesdays 4:30-7:10 pm, Music 270
Christopher Burns (cburns at uwm dot edu)
office hours: Monday, 3 - 4:15 pm, Music 367 or by appointment
Course description: Algorithmic and interactive applications across a wide range of artistic practices including image, sound, performance, web, and installation. Students will develop procedural animation and interactive visualization projects, as well as a final project of their own design, using the Processing interactive multimedia environment.
Prerequisites: Open to post-portfolio undergraduate and Masters-level students in Art, DIVAS, Film, and Music; other students admitted by consent of the instructor. The course content will be challenging, but no prior experience with computer programming is expected.
Learning goals and measurement: Upon successful completion of this course, students should:
Upon successful completion of this course, students should:
1. understand the technical application and aesthetic purpose of algorithms in a variety of artworks;
2. be able to implement similar algorithmic techniques using the Processing environment;
3. be able to realize specific design and creative ideas of their own in Processing.
Student attainment of these objectives will be measured through participation in classroom discussion, programming and creative assignments, and a final creative project.
Grading policy: Semester grades will be determined in accordance with the following priorities.
In-class assignments 40%
Weekly assignments 40%
Final project 20%
Attendance is required; students who miss three or more class meetings will receive reduced grades.
- Course materials:
- UWM Uniform Syllabus Policies: http://www.uwm.edu/Dept/SecU/SyllabusLinks.pdf
- Course syllabus online: http://www.uwm.edu/~cburns/680-spring-2008/
- Processing software and documentation: http://www.processing.org
Course schedule:
- January 23, 2008: 2D fundamentals
- installing/running Processing; comments, canvas, color, shapes, iteration; posting sketches to the web
- in-class assignments: 2^n - precise placement of two shapes, and crazed repetition of two shapes
- for next week: layering - how many distinct and perceptible layers can you fit into one canvas?
- January 30, 2008: animation fundamentals: setup(), draw(), conditionals
- in-class assignment: gravity - a scene where gravity (defined broadly) changes
- for next week: behavior - create two distinct figures, each with their own style of motion
- February 6, 2008: data structures: arrays and array functions
- in-class assignment: sequence - a number of objects, each acting in turn
- for next week: flocking - a number of objects with similar (but not identical) behavior
- February 13, 2008: photographic image fundamentals: sampling, manipulation, animation
- in-class assignment: cut with the kitchen knife - photomontage
- for next week: self-portrait
- February 20, 2008: interaction fundamentals: event handler functions
- in-class assignment: entropy - a scene that becomes static without user interaction
- for next week: gesture - interaction via complex gesture (as opposed to "just clicking")
- February 27, 2008: no class meeting
- March 5, 2008: functions: program structure, return values
- in-class assignment: trajectory - extremely gradual (linear) development of a scene
- for next week: color theory - consistent and idiosyncratic associations between colors
- March 12, 2008: functions II: recursion
- in-class assignment: fractal - how many distinct scales of a visual gesture can you nest?
- for next week: disintegration - showers of particles at different scales
- March 19, 2008: spring break - no class meeting
- March 26, 2008: typography: strings, letterforms
- in-class assignment: ransom note - mixing fonts and behaviors
- for next week: interactive alphabet book
- April 2, 2008: objects
- in-class assignment: haywire - multiple independent responses to a single interaction event
- for next week: windows - glimpses of masked/continuous behavior
- April 9, 2008: objects II
- in-class assignment: blipvert - fastest perceptible editorial rhythm
- for next week: distortion - complex distortions of a repetitive pattern in time and space
- April 16, 2008: video import/export
- in-class assignment: mashup - the cinematic and the animated occupying the same space
- for next week: editor - interactive film editor/montage maker
- April 23, 2008: audio, 3D, extensibility: Minim, oscp5, proMIDI
- April 30, 2008: final project preparation
- May 7, 2008: final project preparation II
- Thursday, May 15, 2008, 7:30 pm: final project presentations, Electracoustic Salon, Music B60