Category Archives: IMA Electives (Legacy Structure – Programming & Data)

Courses that count in IMA’s Programming and Data category

Theory of Computation (CSCI-UA 453)

This course takes a mathematical approach in studying topics in computer science, such as: regular languages and some of their representations (deterministic finite automata, non-deterministic finite automata, regular expressions); proof of non-regularity. Context free languages and pushdown automata; proofs that languages are not context free. Elements of computability theory. Brief introduction to NP-completeness.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 453-000 (9017)01/24/2022 – 05/09/2022 Tue,Thu9:00 AM – 10:00 AM (Morning)at Washington SquareInstructed by Khot, Subhash

Machine Learning for Language Understanding (DS-UA 203)

This course covers widely-used machine learning methods for language understanding—with a special focus on machine learning methods based on artificial neural networks—and culminates in a substantial final project in which students write an original research paper in AI or computational linguistics. If you take this class, you’ll be exposed only to a fraction of the many approaches that researchers have used to teach language to computers. However, you’ll get training and practice with all the research skills that you’ll need to explore the field further on your own. This includes not only the skills to design and build computational models, but also to design experiments to test those models, to write and present your results, and to read and evaluate results from the scientific literature.

Data Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


DS-UA 203-000 (9643)01/24/2022 – 05/09/2022 Wed2:00 PM – 3:00 PM (Early afternoon)at Washington SquareInstructed by Bowman, Samuel


DS-UA 203-000 (9644)01/24/2022 – 05/09/2022 Tue3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by

Politics of Code (IM-UH 3310)

While our relationships between ourselves, our environment, and other people are inherently political, computer technologies and technology companies consistently claim to remain “neutral”. This course will assume the opposite – software is political – and focus on how software applications share commonalities with political systems, how they affect their users as political actors and how we can build alternatives to those systems. This course is aimed at deconstructing the design and implementation of software as a political medium, such as Facebook’s timeline algorithm, city officials’ use of computer simulations to orchestrate urban life, blockchain-backed proof of ownership and algorithmic criminal assessment. Along with an introduction to political theory and media studies, coupled with an exploration of the underlying political impacts of those systems, students will work on several hands-on projects to offer functioning alternatives to those systems. To that end, this course will include several workshops in JavaScript and Python.

Interactive Media (Undergraduate)
4 credits – 16 Weeks

Sections (Spring 2022)


IM-UH 3310-000 (18389)


IM-UH 3310-000 (21644)at Abu DhabiInstructed by Blumtritt, Joerg

Introduction to Digital Humanities (IM-UH 1511)

Credits: 4
Duration: 15 Weeks
Dates:

What happens when the arts and humanities are represented in digital form? What kind of new insights can we have when by looking at the data of the humanities? This course will look at intersections between computers and the humanities, a form of inquiry known as “digital humanities.” The course is structured around a broad examination of concepts important in today’s society (computational thinking, digital identity, text as data, dataset, pattern, algorithm, network, location). Students will discuss these concepts critically, explore real-life examples and put them into practice in hands-on activities. Examples of such hands on work might include, but are not limited to, creating accessible web design, analyzing text digitally, building and visualizing a dataset, curating an open bibliography, thinking about art as data, building a Twitter bot, teaching a computer to recognize human handwriting, visualizing social networks or making digital maps. The course assumes no prior technical skills, but a willingness to explore new technologies is essential for success.

Interactive Media (Undergraduate)
4 credits – 15 Weeks

Nature of Code (INTM-SHU 254)

The Nature of Code is an intermediate course based on Daniel Shiffman’s The Nature of Code course at NYU ITP and was adjusted for undergraduate students. This course explores the fundamentals of programming, such as Object-Oriented Programming, and the application of simple principles of mathematics and physics in order to recreate natural behaviors in a digital environment. Prerequisites: This class uses p5(p5js.org) and requires Interaction Lab, Communication Lab, Application Lab, or similar programming background. Knowledge of other languages, such as Processing, three.js and OpenFrameworks, is also encouraged.

Interactive Media Arts (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2020)


INTM-SHU 254-000 (23412)02/03/2020 – 05/15/2020 Wed5:00 PM – 8:00 PM (Late afternoon)at ShanghaiInstructed by Moon, Jung Hyun

Creative Coding Lab (INTM-SHU 135T)

In this course students will learn the fundamentals of computation, software design, and web technologies, through a series of creative projects. The course is intended to equip students with the skills to develop artistic and business projects that include a significant computational component. Topics such as variables, functions, components, and functional and reactive programming will be brought together to create interactive applications, generative art, data visualization, and other domains. Within the framework of these creative projects students will develop a greater understanding of how computer programs operate, be exposed to various concepts used to create experiences and interactions, and become more familiar with some of the technologies that constitute the internet. This course is intended for students with no prior programming background. Prerequisites: None

Interactive Media Arts (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2020)


INTM-SHU 135T-000 (23244)02/03/2020 – 05/15/2020 Tue,Thu11:00 AM – 12:00 AM (Morning)at ShanghaiInstructed by Steele, Oliver

Critical Data and Visualization (INTM-SHU 204)

Data is at the heart of the increasing role technology has in our lives. Data collection and algorithmic processing are not only central to recent technical breakthroughs such as in AI and automation but have created new economic paradigms where data equals value and shape political approaches to power and control. Decisions based on algorithms affect society at large whether it’s changing the way we transport and distribute goods, or influencing the things we buy, the news we read or even the people we date. The world that algorithms see is data. For the average person, however, data is seldom more than an abstract idea. So what exactly is data? How is value extracted from it? And why should we care? How can we ethically balance the positive uses of data-driven systems with the threats they pose to discriminate and infringe basic human rights? This class seeks to untangle some of these issues practically and theoretically. Prerequisite: Creative Coding Lab or equivalent programming experience. Fulfillment: CORE AT; IMA/IMB elective.

Interactive Media Arts (Undergraduate)
4 credits – 16 Weeks

Sections (Spring 2022)


INTM-SHU 204-000 (17718)01/24/2022 – 05/13/2022 Tue,Thu9:00 AM – 11:00 AM (Morning)at ShanghaiInstructed by Eckert, Leon

Intro to Game Development (OART-UT 1601)

Introduction to Game Development is a practical course that introduces students to the methods, tools and principles used in developing digital games. Over the course of the semester, students will work alone to create a two digital prototypes or ‘sketches’, before building on them to produce a final polished game, using the lessons learned in the earlier prototypes. This is a hands­-on, primarily lab­-based course, and so the focus is on learning ­by ­doing rather than on reading and discussion.

Open Arts Curriculum (Undergraduate)
4 credits – 15 Weeks

Sections (Fall 2022)


OART-UT 1601-000 (14382)09/01/2022 – 12/14/2022 Mon,Wed8:00 AM – 10:00 AM (Morning)at Brooklyn CampusInstructed by

Collective Play (IMNY-UT 225)

Rules of play shape competitive games from checkers to football. But how do the rules of interaction shape non-competitive play? In this course, we will explore, code and test design strategies for playful group interactions while at the same time interrogating both what it means to play and how individual identities and group behaviors. Some of the questions we will ask and attempt to answer: What motivates participation? What hinders it? When does participation become oppressive? What’s the difference between self-consciousness and self-awareness? Who has power? Who doesn’t? Are leaders necessary? What’s the difference between taking turns and engaging in conversation? What happens when the slowest person sets the pace? Interaction inputs we will play with will include: mouse, keyboard, mobile device sensors, and microphone. Outputs will include, visuals, text and sound. We will use p5, websockets and node.js for real-time interaction. Class time will be split between playing with and critiquing examples and translating design strategies into code and logic.

Interactive Media Arts (Undergraduate)
4 credits – 14 Weeks

Sections (Fall 2019)


IMNY-UT 225-000 (23604)09/03/2019 – 12/12/2019 Tue,Thu12:00 AM – 1:00 PM (Early afternoon)at Brooklyn CampusInstructed by Yin, Yue

Introduction to Machine Learning for the Arts (IMNY-UT 224)

An introductory course designed to provide students with hands-on experience developing creative coding projects with machine learning. The history, theory, and application of machine learning algorithms and related datasets are explored in a laboratory context of experimentation and discussion. Examples and exercises will be demonstrated in JavaScript using the p5.js, ml5.js, and TensorFlow.js libraries. In addition, students will learn to work with open source pre-trained models in the cloud using Runway. Principles of data collection and ethics are introduced. Weekly assignments, team and independent projects, and project reports are required.

Interactive Media Arts (Undergraduate)
4 credits – 15 Weeks

Sections (Fall 2021)


IMNY-UT 224-000 (15837)09/02/2021 – 12/14/2021 Mon,Wed10:00 AM – 11:00 AM (Morning)at OnlineInstructed by

Critical Data & Visualization (INTM-SHU 232)

Data is at the heart of the increasing role technology has in our lives. Data collection and algorithmic processing are not only central to recent technical breakthroughs such as in AI and automation but have created new economic paradigms where data equals value and shape political approaches to power and control. Decisions based on algorithms affect society at large whether it’s changing the way we transport and distribute goods, or influencing the things we buy, the news we read or even the people we date. The *world* that algorithms *see* is data. For the average person, however, data is seldom more than an abstract idea. So what exactly is data? How is value extracted from it? And why should we care? How can we ethically balance the positive uses of data-driven systems with the threats they pose to discriminate and infringe basic human rights? This class seeks to untangle some of these issues practically and theoretically. Each week will include a lecture introducing contemporary theorists, artists, groups, and in-class discussions or exercises. Potentially there will be a guest speaker, too. Topic sections may include surveillance and privacy, data journalism and activism or automation and machine bias. What we cover will be complemented by reading and research assignments. The other half of the week is a programming lab in which you will learn the fundamentals of web-based data visualization using JavaScript. Programming assignments will allow you to further practice what we learn. Throughout the semester, you will work on three main visualization projects that are inspired by the theoretical subjects that we cover. The form of these projects will usually be a website. Successful projects feature data visualizations that are both playful as well as effective in conveying information and a reflection that links the practical work to the theoretical learnings. Prerequisite: Interaction Lab, Communications Lab or Application Lab

Interactive Media Arts (Undergraduate)
4 credits – 15 Weeks

Sections (Fall 2019)


INTM-SHU 232-000 (21436)09/02/2019 – 12/13/2019 Mon,Wed1:00 PM – 2:00 PM (Early afternoon)at ShanghaiInstructed by

Machine Learning for New Interfaces (INTM-SHU 215)

Machine Learning for New Interfaces is an introductory course with the goal of teaching machine learning concepts in an approachable way to students with no prior knowledge. We will explore diverse and experimental methods in Machine Learning such as classification, recognition, movement prediction and image style translation. By the end of the course, students will be able to create their own interfaces or applications for the web. They will be able to apply fundamental concepts of Machine Learning, recognize Machine Learning models in the world and make Machine Learning projects applicable to everyday life. Prerequisite: Creative Coding Lab or equivalent programming experience Fulfillment: IMA/IMB elective.

Interactive Media Arts (Undergraduate)
4 credits – 16 Weeks

Sections (Spring 2022)


INTM-SHU 215-000 (19661)01/24/2022 – 05/13/2022 Tue4:00 PM – 7:00 PM (Late afternoon)at ShanghaiInstructed by Moon, Jung Hyun

Artificial Intelligence Arts (INTM-SHU 226)

Artificial Intelligence Arts is an intermediate class that broadly explores issues in the applications of AI to arts and creativity. This class looks at generative Machine Learning algorithms for creation of new media, arts and design. In addition to covering the technical advances, the class also addresses the ethical concerns ranging from the use of data set, the necessarily of AI generative capacity to our proper attitudes towards AI aesthetics and creativity. Students will apply a practical and conceptual understanding of AI both as technology and artistic medium to their creative practices.

Interactive Media Arts (Undergraduate)
4 credits – 13 Weeks

Sections (Fall 2020)


INTM-SHU 226-000 (18540)09/14/2020 – 12/15/2020 Tue9:00 AM – 12:00 AM (Morning)at ShanghaiInstructed by Zhou, Le

Programming Design Systems (INTM-SHU 223)

Programming Design Systems is a course focused on the intersection between graphic design and code. Class time is divided between design topics like form, color, grid systems, and typography, and more computational topics like randomization, repetition, transformation and generative form. The students work to write software that abstract design theories into the code, and show the work in class for design critique. Weekly readings include relevant writings from the history of graphic design, articles from the history of computation, and everything in between. The class aims not only to teach the students how to create designs via code, but also to have something interesting to say about it. The course is based on the Programming Design Systems book, and more background info can be found in the book’s introduction. Prerequisite:Communications Lab

Interactive Media Arts (Undergraduate)
4 credits – 15 Weeks

Sections (Fall 2019)


INTM-SHU 223-000 (18304)09/02/2019 – 12/13/2019 Mon,Wed4:00 PM – 5:00 PM (Late afternoon)at ShanghaiInstructed by

Data Structures (CSCI-UA 9102)

The use and design of data structures, which organize information in computer memory. Stacks, queues, linked lists, binary trees: how to implement them in a high level language, how to analyze their effect on algorithm efficiency, and how to modify them. Programming assignments.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Fall 2021)


CSCI-UA 9102-000 (19807)09/02/2021 – 12/14/2021 Tue,Thu12:00 AM – 1:00 PM (Early afternoon)at NYU Paris (Global)Instructed by Cosse, Augustin Marie Dominique


CSCI-UA 9102-000 (19808)09/02/2021 – 12/14/2021 Tue2:00 PM – 3:00 PM (Early afternoon)at NYU Paris (Global)Instructed by Cosse, Augustin Marie Dominique

Introduction to Machine Learning (CSCI-UA 473)

Students will learn about the theoretical foundations of machine learning and how to apply machine learning to solve new problems. Machine learning is an exciting and fast-moving field at the intersection of computer science, statistics, and optimization, with many consumer applications such as machine translation, speech recognition, and recommendation. Machine learning also plays an increasingly central role in data science, enabling discoveries in fields such as biology, physics, neuroscience, and medicine. In the first part of the course, students will learn about supervised prediction methods including linear and logistic regression, support vector machines, ensemble methods, and decision trees. In the second part of the course, students will learn about methods for clustering, dimensionality reduction, and statistical inference.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2021)


CSCI-UA 473-000 (9300)01/28/2021 – 05/10/2021 Mon,Wed2:00 PM – 3:00 PM (Early afternoon)at Washington SquareInstructed by Wilson, Andrew

Operating Systems (CSCI-UA 202)

This course covers the principles and design of operating systems. Topics include process scheduling and synchronization, deadlocks, memory management including virtual memory, input-output and file systems. Programming assignments.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 202-000 (7818)01/24/2022 – 05/09/2022 Mon,Wed3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by Walfish, Michael


CSCI-UA 202-000 (9186)01/24/2022 – 05/09/2022 Tue,Thu12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Gottlieb, Allan


CSCI-UA 202-000 (20844)01/24/2022 – 05/09/2022 Tue,Thu3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by Gottlieb, Allan

Basic Algorithms (CSCI-UA 310)

Prerequisites: Data Structures (CSCI-UA 102); Discrete Mathematics (MATH-UA 120); and either Calculus I (MATH-UA 121) OR Math for Economics I (MATH-UA 211). An introduction to the study of algorithms. Two main themes are presented: designing appropriate data structures, and analyzing the efficiency of the algorithms which use them. Algorithms for basic problems are studied. These include sorting, searching, graph algorithms and maintaining dynamic data structures. Homework assignments, not necessarily involving programming.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 310-000 (7819)01/24/2022 – 05/09/2022 Tue,Thu12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Regev, Oded


CSCI-UA 310-000 (7820)01/24/2022 – 05/09/2022 Mon12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Song, Min Jae


CSCI-UA 310-000 (7821)01/24/2022 – 05/09/2022 Tue,Thu8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by Regev, Oded


CSCI-UA 310-000 (8906)01/24/2022 – 05/09/2022 Wed8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by Fenteany, Peter


CSCI-UA 310-000 (9912)01/24/2022 – 05/09/2022 Mon,Wed3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by Nassajianmojarrad, Seyed · Mundra, Jaya


CSCI-UA 310-000 (9913)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Jin, Yifan


CSCI-UA 310-000 (20845)01/24/2022 – 05/09/2022 Mon12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Karthikeyan, Harish


CSCI-UA 310-000 (20846)01/24/2022 – 05/09/2022 Wed8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by Agarwal, Ishan


CSCI-UA 310-000 (10617)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Zhao, Xinyi

Data Structures (CSCI-UA 102)

The use and design of data structures, which organize information in computer memory. Stacks, queues, linked lists, binary trees: how to implement them in a high level language, how to analyze their effect on algorithm efficiency, and how to modify them. Programming assignments.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 102-000 (20828)01/24/2022 – 05/09/2022 Mon,Wed3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by Korth, Evan · Vataksi, Denisa


CSCI-UA 102-000 (20833)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Vieira, Diogo


CSCI-UA 102-000 (20830)01/24/2022 – 05/09/2022 Tue,Thu2:00 PM – 3:00 PM (Early afternoon)at Washington SquareInstructed by Bari, Anasse · Rao, Sindhuja


CSCI-UA 102-000 (20834)01/24/2022 – 05/09/2022 Wed4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Mavi, Vaibhav


CSCI-UA 102-000 (20831)01/24/2022 – 05/09/2022 Tue,Thu9:00 AM – 10:00 AM (Morning)at Washington SquareInstructed by Klukowska, Joanna · Khatri, Riju


CSCI-UA 102-000 (20832)01/24/2022 – 05/09/2022 Mon11:00 AM – 12:00 AM (Morning)at Washington SquareInstructed by Ilamathy, Swarna Swapna


CSCI-UA 102-000 (20829)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Bharti, Sweta


CSCI-UA 102-000 (20835)01/24/2022 – 05/09/2022 Wed4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Shah, Vivek


CSCI-UA 102-000 (20836)01/24/2022 – 05/09/2022 Mon11:00 AM – 12:00 AM (Morning)at Washington SquareInstructed by Muni, Sumanth Reddy


CSCI-UA 102-000 (20837)01/24/2022 – 05/09/2022 Mon8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by DiGiovanni, Lauren


CSCI-UA 102-000 (20838)01/24/2022 – 05/09/2022 Wed8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by R D, Harshitha


CSCI-UA 102-000 (20839)01/24/2022 – 05/09/2022 Mon2:00 PM – 3:00 PM (Early afternoon)at Washington SquareInstructed by Ilamathy, Swarna Swapna


CSCI-UA 102-000 (20840)01/24/2022 – 05/09/2022 Wed2:00 PM – 3:00 PM (Early afternoon)at Washington SquareInstructed by Cappadona, Joseph