Max is a graphical multimedia programming environment. It was originally developed by Miller Puckette as a MIDI mediation language at IRCAM, and is now currently maintained and sold by David Zicarelli's company Cycling'74.
It is an ideal environment for developing two kinds of applications: realtime processing of data, such as serial input, MIDI messages, sound, video, 3D and system messages; and mapping data from one format to another in wildly creative ways.
Max is the core language, used for MIDI, basic data manipulation & interface design. MSP is the digital signal processing architecture of Max, used for manipulating frequency, or streams of numbers at extremely high speeds. Jitter is Cycling'74's extension for fast processing of large grids of numbers, or matrices. It is especially optimized at points for 4-plane grids of eight bit numbers, or video frames. It also is an extraordinarily powerful development environment for nontraditional 3d graphics work.
This is a course for two different kinds of students: those interested in using Max to program installation pieces, such as physical computing projects or dynamic site-specific artworks; and those interested in developing custom interfaces for performance. Be warned: this is both a math class for artists and an art class for math people. If you do not have interest in either one of these areas, drop the class now.
A final Max programming project, consisting of an installation piece, a performance or a generative artwork, will count for 50% of the final grade.
The other 50% of the grade will depend on student participation, in the form of
I am open to 3rd semester students using Max in their theses for final credit, as long as it takes the form of an installation or a performance.
I am also quite open to students collaborating on final projects, or doing one project for two classes.
I will have office hours either in the main lab or at another location (you will have plenty of warning if this happens!) at a time to be announced after the first class of the semester. This will be the best time to reach me or ask me questions. I also check email frequently.
More information on me is available on my outdated and inconsistent website. My work is occasionally interesting, but not under any circumstances to be aped. You are all incredibly bright, gifted students. I have no doubt that the work you produce in this class will make mine look cheap, uninteresting and gimmicky. Make me proud.
Class 1 9/9 | Why not to take this class. Max 101: Ints, floats, symbols, lists. How timing works. The LCD object. MIDI 101.
Due for class 2:
This should take you at least 5-7 hours, not including the printout time. Anything less and it's fair to say that you are giving the class short shrift, and should consider dropping it now. If it takes you much more time than that, it's a fair assumption that you are doing the right thing. If you are having trouble, you should take advantage of the itp-sound mailing list. Daniel Palkowski, Luke DuBois and I assign membership of this list to our students, and many alumnae and alumni of our classes stick around. The list's prime function is a safe space for beginning Maxers to ask what they may assume are stupid questions. Hit a wall? Don't give up, and don't beat yourself up. Ask the list. Patches from class here. |
Class 2 9/23 |
Showing first LCD efforts. Some more discussion of MIDI. Due for class 3:
Patches from class here. Sorry they're late. :( |
Class 3 9/30 |
Jitter 1: Quicktime and camera input. Complexity and encapsulation. Homework due Class 4:
Patches from class here. |
Class 4 10/7 |
Jitter 2: Matrix manipulations and intermediate tricks. Homework due Class 5:
Patches from class here. |
Class 5 10/14 | Jitter 3: Jitter assignment presentations.
Homework due class 6:
Patches from class here. Sorry they're late. |
Class 6 10/21 | MSP 1: Sound file playback and manipulation
Patches from class here. |
Class 7 10/28 | MSP 2: Synthesis and Synesthesia.
Homework due Class 8:
Patches from class here. |
Class 8 11/4 | MSP 3: MSP assignment presentations.
Homework due Class 9:
Patches from class here. |
Class 9 11/11 | Collab clinic sessions. |
Class 10 11/18 | Collab clinic sessions. |
Class 11 11/25 |
Collab performances. Guests encouraged at this class; we will also try to get a decent venue. Due Class 12:
|
Class 12 12/2 | Final project proposal presentations. |
Class 13 12/9 | Final project clinic sessions. |
Class 14 12/16 | Final projects due. Guests encouraged at this class. |
There are no books in the bookstore for this class. All texts are in freely downloadable PDF files and web links.
Here's a sad truth: People who bring Mac laptops to my class will have a distinct advantage.
I am a Macintosh bigot, and have been so for decades. Windows, especially Windows Vista, is a subpar environment for the software we will be using for this class. Driver issues, DirectX inconsistencies, idiosyncratic audio tools; the reasons for my warning are legion. I can fix problems like that on the Mac side, but not on the Windows side. Working with a Mac will save my time and yours.
Max is an idiosyncratic environment. You will, over the course of the semester, develop a workflow for your patches which will be greatly dependent upon the general workflow of your own computing environment. Having your own laptop is the easiest way to deal with this. Even the low-cost Apple MacBooks will be superior to using Windows or depending upon the lab computer infrastructure.
You are encouraged to purchase a limited-time student license of Max/MSP/Jitter from Cycling '74. Start saving your quarters now; those of you who wish to continue to the Max 2 class may find yourselves in need of the real $450 thing.
That being said, most of the lab machines have up-to-date copies of Max/MSP/Jitter on them. Use them in a pinch, but I cannot recommend relying upon them, and will not accept tech issues as excuses for late or incomplete homework.
There is a rich tapestry of third-party extensions for Max. Many of these work very well with OS X. Installing these is quite easy if you have administrative access to your working machine- i.e. if you're working on your own personal laptop. The lab Macintoshes have the third-party extensions judged relevant and necessary. If you feel there is an extension set you would like placed on the lab machines, please talk to me; you're probably right and I'll put it on there.
There are many sites about Max on the web.
There is no better way to learn Max than to ask questions. Asking questions is easy when you have the patience for mailing lists. Joining one or all of these is not required for the course, but you will find it much much easier to learn the material with community support.
Alexis Feurer | Bruce Drummond | Cecilia Elguero |
Clayton Ewing | Dan Kramer | Ira Goldberg |
Julia Valeria | Lev Kanter | Matt Meade |
Simeon Paulin |
Last updated