This is an older syllabus from Spring 2006. The current version is here
Course Mailing List: http://forums.nyu.edu/cgi-bin/nyu.pl?enter=itp-text
Course Blog: http://www.shiffman.net/a2z
Course Presentation Schedule: http://www.shiffman.net/coursewiki/index.php?title=Presentations_A2Z
Office Hours Sign-Up: http://www.shiffman.net/coursewiki/index.php?title=Office_Hours
Syllabus (Spring 2006)
(tutorials, examples, readings, and assignments are on each individual week’s page)
Week 4 — Bayesian Text Analysis
Week 7 — Midterm Workshop
Week 11 — final project workshop
Week 12 — final project workshop
Week 13 — final project presentations
Week 14 — final project presentations
Course Description
There are 16,000 free books in the Project Gutenberg digital catalog. Google print is scanning millions. With all this digitized text, what can we do with it beyond simply search and browse? This course will focus on programming strategies and techniques behind procedural analysis and generation of text. We’ll explore topics ranging from evaluating text according to its statistical properties to the automated production of text via artificial intelligence. Student will be encouraged to develop their own systems and methods, from poetry machines to intelligent spiders to evolutionary language generators, etc. Examples will be demonstrated using Java and Processing with a focus on advanced data structures (linked lists, hash tables, binary trees) associated with storing and manipulating text. Prerequisite: H79.2233 Introduction to Computational Media or equivalent programming experience.
Homework
Students are required to complete a programming exercise each week (assignments to be specified on the weekly handouts linked above). Documenation for each assignment should be posted to the course blog http://www.shiffman.net/a2z. You will need to register for an account on the blog.
Presentations
Each student is required to make a “research” presentation once during the course of the semester to supplement the material presented in class. 2-3 people should sign up for each week (and can present as a group or separately.) The format for the presentations is extremely open (feel free to think creatively here). They should be brief (10-20 minutes, longer for 3 people) and could include any of the following: information on related projects, a history lesson, a performance/reading, links to online sources and tutorials, book reviews, source code examples, diagrams, etc. You should include a link to documentation of your talk on the presentation schedule wiki.
Some links: