Course Syllabus

A proper syllabus will be posted here shortly. In the meantime, here is the important information I sent earlier.

0. Course Subject and Workload.
True literacy means being able to both read and write. If using pre-existing software (such as Photoshop) is akin to “reading” digital media, then programming is the equivalent of writing. This course is concerned with developing your ability to be literate in this way -- specifically, creating software to satisfy aesthetic, personal and/or social motivations. Now think back to how long it took you to learn to read and write English. And how much longer it took for you to learn to write articulately, fluently, precisely, and economically. And how much longer it took before you developed a clear voice of your own. Learning to write software is similarly difficult. We have a lot of catching up to do, and this class is a LOT of work. If you already know the mechanics of writing software, this class is even MORE work, because you must cut your own path towards finding your own artistic voice in this incredibly impersonal and difficult medium. No two ways about it: this class is a TON of work. If your desire to be computationally literate is just velleity -- a mere wish, unaccompanied by effort to obtain -- drop the course now.

1. Enrollment.
"Waitlisted" students should not be concerned about their status as such. This status is assigned automatically by the School of Art in order to prioritize seats for CFA students. However, there is no shortage of places in the class and you should all consider yourself enrolled. After a couple of weeks pass and the roster has settled down, I'll add all of the waitlisted students adminstratively.

2. Class Times and Location.
This class takes place on Tuesdays and Thursdays from 1:30-4:30pm. Please take note that, due to a room booking conflict, the course will NOT be taught in room CFA-317. Instead, our class is scheduled in the BAKER HALL CLUSTER in room Baker-140.

3. Course Calendar.
Due to my professional activities, I will be away from CMU on business travel during three separate weeks this semester. Unfortunately and rather awkwardly, the main event in my yearly exhibition calendar, the Ars Electronica festival in Austria, always falls during the first week of school. As a result, please note that our first face-to-face meeting as a complete group will take place on Thursday, September 8th.
For the record, I will be away on the following days:
-- August 30, September 1 & 6: Ars Electronica Festival, Austria.
-- September 27 & 29: Generator.X Exhibition , Norway.
-- December 6 & 8: Tokyo Digital Arts Festival, Japan.
Additionally, Tuesday November 22nd may be canceled to permit an early Thanksgiving, or may be an optional class session.

4. New Extra Class Sessions.
This semester I will be conducting additional meeting sessions at regular times. These sessions are intended to make up for my absences mentioned above. However these sessions will be focused more on meeting the individual needs of each student. Novice programmers can get individual help during these sessions, while more experienced students can take these opportunities to explore digressions or get more in-depth technical or artistic feedback. Attendance at these sessions is optional, i.e. not required. I will conduct them in CFA-317 on Tuesday and Wednesday afternoons from 4:45-6:00pm.

5. Course Programming Environment.
This semester we will once again be using the Processing development environment. This is a free, cross-platform, comprehensive educational system for developing interactive graphics and other computational systems. I am happy to report that we will be using some of Processing's latest OpenGL-based features. Additionally, we will also be among the first people to test-drive the new Processing textbook, which is not yet published or available in stores. For more information about Processing, please visit: http://www.processing.org/

6. Coursework Management System: How to use.
You will first need to create a simple working project in Processing, and "Export" (Control-E) the project into a compiled applet. This will yield a .jar file (a "java archive", which is created for you in the Processing Sketchbook in your "My Documents" directory when you do the Export) -- which is the file you will need to upload to the courseware website. To upload the file, log in to the following web site: http://courses.cfa.cmu.edu/~golan/courses/dmc/iig_05f/login/ (Your user names and passwords have been sent to you by email.) Type a short description of the project in the "Description" field; copy-paste your code into the "Code (if Any)" field; and upload the .jar file into the "Medium" field. You will also need to specify the width and height of the applet's rectangle. Submit the exercise. In a *separate* saving operation, upload a 100x100 pixel image of your project into the "Photo" field.