Introduction To Computational Media (ICM)
Shawn Van Every Shawn.Van.Every@nyu.edu
Thursdays 3:30 PM - 6:00 PM
H79.2233 Section 5
Syllabus (this page): http://itp.nyu.edu/ICM/shawn
Main ICM Page: http://itp.nyu.edu/ICM/
ICM Mailing List: http://forums.nyu.edu/cgi-bin/nyu.pl?enter=itp-icm
Homework Wiki: http://stage.itp.tsoa.nyu.edu/~dbo3/cgi-bin/itp/itp.cgi?ICM_VanEvery_Fall_05
Tuesdays 12 PM - 2 PM
Signup: http://itp.nyu.edu/~dbo3/cgi-bin/itp/itp.cgi?ShawnOfficeHours (moved because of spam)
20% Class Participation
30% Final Project
Mandatory, unexcused absences will affect your final grade. If you are going to be absent, please let me know ahead of time if you can.
Excessive lateness will affect your grade. Don't be late.
Laptop use is prohibited while other students are presenting or during discussion. While I am lecturing you may use them for note taking or class related work. In other words, respect your fellow students and don't check your email.
Week 1 - September 8
Introductions, Syllabus, Programming in English and Processing
Install and familarize yourself with Processing
Program your drawing in Processing
Draw something else (of course, in Processing)
As We May Think, Vannevar Bush
Chapter 1 and 2 of Dan Shiffman's book in progress.
Week 2 - September 15
Basic Constructs: Loops, Conditionals and Variables
Being Effective: Program Flow and Algorithms
Assignment: (choose one)
Make a ball bounce around the screen
Make a kaleidoscope
Make a painting program
Create something else, perhaps a classic arcade style game.
The Graphical Revolution, Chapter 25 of CODE The Hidden Language of Computer Hardware and Software
Suggested Reading: Chapter 3, 4 and 5 of Dan Shiffman's book in progress.
Week 3 - September 22
Modularity: Functions and Objects
Assignment: (choose one)
Redo your previous assignment using objects
Create an organism that responds to the mouse or keyboard
Create something else of your own devising
Pattern on the Stone, W. Daniel Hillis: Chapter 9, Beyond Engineering
Suggested Reading: Chapter 7 and 8 of Dan Shiffman's book in progress.
Week 4 - September 29
Many of the same: Arrays and Iteration
Redo a previous assignment with multiple objects (use arrays and objects)
Create many of something new and have them behave independently (use arrays and objects)
The Cathedral and the Bazaar
Suggested Reading: Chapter 6 and 9 of Dan Shiffman's book in progress.
Week 5 - October 6
Hooking up with PComp: Microcontrollers
AND Gimme Eyes: Cameras
Create something that uses input from something other than a keyboard or mouse.
Logic and Switches, Chapter 10 of CODE The Hidden Language of Computer Hardware and Software
Chapter 11 of Dan Shiffman's book in progress.
Week 6 - October 13
Review and Midterm Overview
Come up with a midterm idea, start on in it (diagram, psuedo code and start programming) and prepare to discuss in class.
Week 7 - October 20
Week 8 - October 27
Paper: Write a short 2 to 3 page story about a day in your life 10 years in the future.
Some suggestions: Citizen journalists swarm you after finding out about your new dream control software; Cyborg has become the fashion and you need some body work before you go to a party; Your video databank has been corrupted and you have a deadline in the morning.
Week 9 - November 3
Strings and Networking
Assignment: Create a piece that uses data retrieved from the network. Do not use an old project, do something new and different.
Week 10 - November 10
Mmmn.. I like Java
Prepare your final project proposal (in the form of a website)
It should include the following:
Project name or title
Materials: References such as other software, applets, code, video, websites and so on.
Development plan: Pseudo code, diagram or other documents that you can start with
Week 11 - November 17
Final Project Proposals
Week 12 - December 1
Final Project Workshop 1
PHP and Processing
Week 13 - December 8
Final Project Workshop 2
Week 14 - December 15
Let's See it! Show final projects