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.
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).
A site for IMA NY Students to find equivalent courses outside of IMA NY
For most students joining IMA in Fall 2022 and beyond, there is a new program structure that affects the categorization of courses on this site:
Any class in any IMA major elective category (ie "Art & Design") refers to the IMA program structure previous to those entering in Fall 2022. If you are in the class of 2026 (most entering Fall 2022 or later), any course in an IMA elective category are generic IMA electives in the new structure.