Introduction to Computational Media Syllabus
Daniel Rozin
Week 1 -- Introduction and Drawing -- Tues Sep 6, Wed Sep 7
- PowerPoint Presentation
- Why are we here? What is computational media? What is programming? What is it good for? What kinds of programming languages are there?
- Algorithmic Thinking
- What is Processing? Why Processing?
- Server-side vs. client programming
- Things made with Processing: ProcessingLinks
- Drawing with numbers
- Coordinate Systems
- Shapes
- Color
- Code
- Processing reference
- Running your application
- Exporting: applet, application, android, javascript
- Related Reading
- Downloading Processing
- This semester we are going to use an alpha release of Processing 2.0. The advantage of this is that we are using the leading edge newest version of Processing which includes Javascript mode, better support for video, and many other features. The downside to using 2.0 is that it is new and somewhat unstable, we may experience more bugginess than with the existing 1.5.1 version. In addition, some changes made for Processing in 2.0 will result in differences in the reference and examples on the Processing web site, as well as in the various Processing books. Changes are documented on the Processing wiki. If you think you have found a bug or are confused by a syntax difference, send an e-mail to the google group.
- Download Processing 2.0 Alpha 1 (released 9/2/11): MACOSX, WINDOWS, LINUX
- Homework
- Sign up for the ICM Google Group: https://groups.google.com/a/itp.nyu.edu/group/icm
- Create your own screen drawing: Try to draw something meaningful, Use only 2D primitive shapes – arc(), curve(), ellipse(), line(), point(), quad(), rect(), triangle() – and basic color functions – background(), colorMode(), fill(), noFill(), noStroke(), stroke(). Remember to use size() to specify the dimensions of your window.
- Post a link to the homework wiki: Homework-Rozin-ICM-Tuesday-F11, Homework-Rozin-ICM-Wednesday-F11. Instructions for how to do so are here: Homework-upload-instructions
- Examples: http://www.learningprocessing.com/examples/ -- take a look at Chapter 1 and 2 (3 if you are feeling ambitious).
Week 2 -- Animation -- Tues Sep 13, Wed Sep 14
Week 3 -- Interaction -- Tues Sep 20,Wed Sep 21
Week 4 -- Functions & Objects: Part 1 -- Tues Sep 27, Wed Sep 28
Week 5 -- Functions & Objects Part 2 -- Tues Oct 4, Wed Oct 5
- Objects: http://www.learningprocessing.com/examples/chapter-8/
- Related Reading
- Homework
- Design a sketch in an object-oriented fashion. Try to eliminate all code from the main tab (setup() and draw()) except for the core requirements (size(), background(), etc.) and calls to objects.
Week 6 -- Repetition and Reproduction: Tues Oct 18, Wed Oct 12
- Arrays: http://www.learningprocessing.com/examples/chapter-9/
- What is an ArrayList?
- Related Reading
- Homework
- Using arrays and loops, write a program that creates multiple instances of an object (feel free to use an object you developed previously or create something new).
- Brainstorm an idea for a midterm project. Feel free to think of your midterm on as grand a scale as you like, however, the midterm assignment will involve implementing only one step of a larger project. Remember, it's only a one week assignment! Be prepared to speak briefly about your midterm idea next week.
Week 7 -- Pixels: Tues Oct 25, Wed Oct 19
Week 8 -- Show Midterms: Tues Nov 1, Wed Oct 26
- Each student will present their midterm assignment. Plan on speaking for 5 minutes or less (not including questions). Talk briefly about your idea as a whole, what you chose to implement in just this one week, any problems you had, and future plans. We will follow the order on the wiki so feel free to move things around if you would like to present earlier or later in class (those at the bottom of the list have a chance of being pushed a week later.) Link to your documentation on the wiki: Homework-Rozin-ICM-Tuesday-F11, Homework-Rozin-ICM-Wednesday-F11
Week 9 -- Data: Tues Nov 8, Wed Nov 2
Week 10 -- P3D : Tues Nov 22, Wed Nov 9
- translate, rotate, and scale
- 3D shapes, vertices
- textures
- lighting
- Kinnect
- Homework: Prepare a final project proposal. Create a web page or blog post with title, description, sample imagery, diagrams, Processing code, etc. Presentations will be split over the next wo weeks.
Week 12 -- Propose Final Projects: Tues Nov 29, Wed Nov 23
- Propose Final Projects
- Video Processing
- tracking :
- brightness
- color
- change/ movement
- Masking:
- Chroma key
- background removal
- all examples in zip
Week 13 -- Final Project Workshop: Tues Dec 6, Wed Nov 30
Week 14 -- Final Project Presentations, Tues Dec 13, Wed Dec 7
Requirements
- You are required to attend all class meetings and submit all weekly assignments, a midterm, and a final project.
- Grading (pass/fail) will be based on a combination of factors:
- Attendance, participation in class discussion, and engagement in other students' projects (25%)
- Quality of weekly assignments and midterm (50%)
- Final Project (25%)
- Personal progress; how much did you advance from your initial state in this class.
|