Programming from A to Z (ITPG-GT 2536)

This course focuses on programming strategies and techniques behind procedural analysis and generation of text-based data. We’ll explore topics ranging from evaluating text according to its statistical properties to the automated production of text with probabilistic methods to text visualization. Students will learn server-side and client-side JavaScript programming and develop projects that can be shared and interacted with online. This fall the course will also explore topics in machine learning as related to text. There will be weekly homework assignments as well as a final project.

Interactive Telecommunications (Graduate)
4 credits – 13 Weeks

Sections (Fall 2024)


ITPG-GT 2536-000 (15690)
09/04/2024 – 12/04/2024 Wed
12:00 AM – 2:00 PM (Early afternoon)
at Brooklyn Campus
Instructed by Shiffman, Daniel

The Nature of Code (ITPG-GT 2480)

Can we capture the unpredictable evolutionary and emergent properties of nature in software? Can understanding the mathematical principles behind our physical world world help us to create digital worlds? This class focuses on the programming strategies and techniques behind computer simulations of natural systems. We explore topics ranging from basic mathematics and physics concepts to more advanced simulations of complex systems. Subjects covered include physics simulation, trigonometry, self-organization, genetic algorithms, and neural networks. Examples are demonstrated in JavaScript using p5.js (https://p5js.org). Much of the class time will be dedicated to in-class exercises and self-study as the course is available online through a video series (https://www.youtube.com/user/shiffman/playlists) and textbook (http://natureofcode.com/book).

Interactive Telecommunications (Graduate)
4 credits – 14 Weeks

Sections (Spring 2024)


ITPG-GT 2480-000 (14744)
01/25/2024 – 05/02/2024 Thu
12:00 AM – 2:00 PM (Early afternoon)
at Brooklyn Campus
Instructed by Shiffman, Daniel