Duration: 15 Weeks
Dates: Tue
Computer Science (Undergraduate)
3 credits – 15 Weeks
Courses that count in IMA’s Programming and Data category
Computer Science (Undergraduate)
3 credits – 15 Weeks
Computer Science (Undergraduate)
3 credits – 15 Weeks
Computer Science (Undergraduate)
3 credits – 15 Weeks
Computer Science (Undergraduate)
3 credits – 15 Weeks
Computer Science (Undergraduate)
3 credits – 15 Weeks
This course covers cryptographic systems. Topics: Capability and access control mechanisms, authentication models, protection models. Database and operating system security issues, mobile code, security kernels. Malicious code, Trojan horses and computer viruses. Security policy formation and enforcement enforcement, legal aspects and ethical aspects. | Prerequisite for Brooklyn Students: CS-UY 2214 | Prerequisite for CAS Students: CSCI-UA 201 | Prerequisite for Abu Dhabi Students: CS-UH 2010 or ENGR-AD 3511 | Prerequisite for Shanghai Students: CENG-SHU 202 | Co-requisite for ALL Students: CS-UY 3224
Computer Science (Undergraduate)
3 credits – 14 Weeks
CS-UY 3923-000 (7835)09/02/2025 – 12/11/2025 Tue6:00 PM – 9:00 PM (Evening)at Brooklyn CampusInstructed by Cappos, Justin
Computer Science (Undergraduate)
3 credits – 15 Weeks
Geographic Information Systems are computer systems for the storage, retrieval, analysis, and display of geographic data, that is data about features and phenomena on the surface of the earth. This course will introduce the students to GIS through hands-on computer exercises, as well as readings and lectures about cartography, tools, data, and the social impacts of GIS. GIS projects start with data and move through analysis to cartographic display. Pedagogically, we will be starting at the end moving backward to data and analysis. | Note: This course cannot be used to satisfy Humanities/Social Science requirements for majors outside of the TCS department. | Prerequisite: EXPOS-UA 1 or EXPOS-UA 4
Urban Studies (Undergraduate)
4 credits – 15 Weeks
URB-UY 2114-000 (21070)01/23/2023 – 05/08/2023 Tue5:00 PM – 7:00 PM (Late afternoon)at Brooklyn CampusInstructed by Mistry, Himanshu
In this course, students focus on client and server side programming, as well as the web design and development process. Students are also introduced to databases for the web. Examples of dynamic web applications include content management systems, registration systems, and social media solutions. | Pre-requisite: DM-UY.2193
Integrated Digital Media (Undergraduate)
3 credits – 14 Weeks
DM-UY 3193-000 (15787)09/02/2025 – 12/11/2025 Tue,Thu8:00 AM – 9:00 AM (Morning)at Brooklyn CampusInstructed by Adee, Katie
Shader Lab is an introduction to shaders for game designers that are artists first, and technicians second. This course attempts to bridge gaps in the necessary knowledge and establish the contextual foundation to allow students to make sense of the disparate sub-disciplines necessary to meaningfully express themselves aesthetically in a rendered environment. Ultimately, Shader Lab is a primer for students seeking to create unique and expressive aesthetics for their digital games. The course empowers designers by providing a conceptual and functional understanding of 3D rendering in order to enable the design and implementation of their personal style.
In this class students will learn math tools to boost their digital practice, fix common problems, and understand the math behind our human perception of the physical world. This course spans different branches of math including geometry, linear algebra, logarithmic thinking, and statistics as they relate to a programmer making digital art with our contemporary media ecosystem. The aim of this course isn’t to become calculators, rather strengthen our intuition through historical and ethnomathematics perspectives and foster a new relationship to math. The prerequisites to this class are basic arithmetic skills and an introduction to programming. We will create applications using free and open-source software, including Python and p5.js.
Interactive Telecommunications (Graduate)
4 credits – 15 Weeks
ITPG-GT 2058-000 (23070)01/27/2020 – 05/11/2020 Thu6:00 PM – 9:00 PM (Evening)at Brooklyn CampusInstructed by Kraft, Robert
In this course, we’ll investigate two closely related ideas: public data and data publics. We’ll learn how to access and represent data from an assortment of existing public data sources, how to liberate currently obfuscated data sets, and how to create our own useful/whimsical/critical APIs from scratch. We’ll also investigate the act of putting data into public space – through sculpture, projections, performance, and participatory interventions. Particular attention will be paid to methods which bring data back to communities from which it was collected, and to tactics which build grassroots literacies, respect local ways of knowing and reinforce capabilities for stewardship and sovereignty.
Interactive Telecommunications (Graduate)
4 credits – 12 Weeks
The ways in which we communicate has changed radically in the last 100 years. As the communication systems we use have increased in complexity, so has the effort it takes to understand how they work. Most of us use protocols like LTE, HTTP, TCP/IP, and BLE every day. We take them for granted, almost like we do the laws of nature. But there are more than the laws of physics, more than techniques of engineering, embedded in the design and implementation of our protocols of communication. To understand their role in our lives, we need to look into the societal and economic contexts in which they came to be. In this class, we will examine communication protocols using Raspberry Pi’s, Arduinos, Software Defined Radios, and other connected devices. We will look closer at organizations like iSOC, ICANN and IEEE to better understand how protocol designs are implemented and standardized. Through readings, research and hands-on work we will build an understanding of how these protocols work, how their designs incorporate the physical, technical, cultural, corporate and political assumptions of the actors behind them. In the first half of the class readings and assignments will help familiarize students with some of the different protocols we rely on every day. In the second half, students will work in groups to investigate a communications protocol and consider its impact from a technical, societal and environmental perspective. Final projects will communicate their findings in whatever form students deem appropriate – explanatory blog posts, physical or digital installations, or even videos and podcasts.
Interactive Telecommunications (Graduate)
2 credits – 6 Weeks
ITPG-GT 2056-000 (22886)03/30/2020 – 05/11/2020 Mon6:00 PM – 9:00 PM (Evening)at Brooklyn CampusInstructed by Mattu, Surya
With Machine Learning models are getting smaller, and microcontrollers are getting more computing power, Machine Learning is moving towards edge devices. This class explores the idea of how machine learning algorithms can be used on microcontrollers along with sensor data to build Physical Computing projects. In this class, we will learn about TensorFlow Lite, a library that allows you to run machine learning algorithms on microcontrollers. We will talk about common machine learning algorithms and techniques and apply them to build hands-on interactive projects that enrich our daily lives. Students will learn to use pre-trained models, and re-train the models with sensor data. We are going to talk about Image Classification, Transfer Learning, Gesture and Speech Detection. For each topic, we will first discuss its history, theory, datasets, and applications, and then build simple experiments based on the topic. Prospective students are expected to have taken Introduction to Physical Computing and Introduction to Computational Media course, or have equivalent programming experience with Arduino and JavaScript.
Interactive Telecommunications (Graduate)
2 credits – 6 Weeks
ITPG-GT 2050-000 (22889)03/24/2020 – 05/05/2020 Tue6:00 PM – 9:00 PM (Evening)at Brooklyn CampusInstructed by Shi, Yining
Introduction to Critical Mapping and Open Source Geospatial Web Analysis and Visualization is an introduction to critical perspectives in cartography and geospatial information systems and web technologies. This course will introduce students to the foundations of geographic data analysis and visualization, grounding practical studio based exercises and projects with critical readings and theory. Students taking this course will gain an appreciation for geographic thinking, learn to ask geographic questions, and apply basic methodologies to “make sense” of geographic data. The course will be conducted with open source geographic information systems and web technologies. Students are not expected to enter the class with knowledge of these tools, but will be expected to learn and apply them through studio exercises and project briefings.
Interactive Telecommunications (Graduate)
2 credits – 6 Weeks
ITPG-GT 2049-000 (22872)03/30/2020 – 05/11/2020 Mon6:00 PM – 9:00 PM (Evening)at Brooklyn CampusInstructed by Lee, Joseph K
Autonomous Artificial Artists (AAA) is a class to explore ways of making artworks “autonomous.” In this context, “autonomy” brings together three independent but related criteria: 1) artificial intelligence being a primary determinant in an artwork’s aesthetics 2) autonomous software principles culled from peer-to-peer network design, blockchain and decentralization technology, serverless and federated machine learning, cryptoeconomics, and agent-based multiplayer simulation. 3) crowd-sourced art where mass, unbounded cooperation of many participants creates novel artworks which represent the “hive mind” or collective input. The goal of this class is to learn a little bit about each of these seemingly disparate fields, and see how they may interact in interesting new ways. The idea of autonomous artworks is very new, and is being actively discussed by a small group of interdisciplinary researchers and artists since 2016/2017. Although the topic is highly experimental, it is nevertheless based on concrete technologies, making simultaneous use of several techniques which are under active development and have potentially far-reaching ramifications well outside the domain of art. The time is ripe for people within more design-oriented fields to begin thinking about how they might be used in a broader context. The class has both a theoretical component (learning about each of the individual technologies and their interplay) as well as a practical component: training and deploying generative models on computational environments that are as close to decentralized or autonomous as possible. In addition, we will explore prior notions of crowd-sourced or mass-collaborative art, touching on older principles and strategies such as Oulipo, exquisite corpse, and crowd-sourced computational artworks like Electric Sheep, Exhausting a Crowd, and others.
Interactive Telecommunications (Graduate)
2 credits – 5 Weeks
ITPG-GT 2497-000 (22882)04/06/2020 – 05/11/2020 Mon3:00 PM – 6:00 PM (Late afternoon)at Brooklyn CampusInstructed by Kogan, Gennady
This class is a project development studio for interactive music projects —that is, pieces of music that are not linear, but rather offer multiple dimensions for listeners to explore (on their phones in a crowded subway, at an abandoned factory in Palermo, back on their couches after a long day, at a classical concert hall). Students will take a project from concept to execution over several iterations, applying Interaction Design principles and techniques. During the first half of the semester, they will gather aural and visual references, compose graphic notations, and create interactive studies to explore specific elements of their composition. This work will lead to the implementation of the midterm project: a functional, high-fidelity prototype. For their final projects, students will evaluate their midterm pieces from the perspectives of music, visual design and interaction design, and refine them to produce an expressive piece of interactive music. ICM or equivalent experience is required. Some experience in making or producing music will be useful, but is not required.
Interactive Telecommunications (Graduate)
4 credits – 14 Weeks
ITPG-GT 2475-000 (22929)01/28/2020 – 05/05/2020 Tue12:00 AM – 2:00 PM (Early afternoon)at Brooklyn CampusInstructed by Pereira Hors, Luisa
Stereo (2-speaker) sound is the default way we produce and distribute most audio. This class challenges the stereophonic-centricity of digital sound and instead focuses on the context of listening, interfacing and interacting with audio beyond 2 speakers. We will take a novel approach to spatialization by interfacing web technologies (Javascript, Web Audio, WebRTC) with multichannel audio to create room-scale interactive music and sonic spaces, and then make our findings publicly available through musical artifacts, open source tools, and documentation. We will explore conventional and unconventional loudspeaker arrangements ranging from 3 to 40 channels and how distribution and context affects music. Together, we will participate in a semester-long project examining the affordances of spatial and multichannel sound, designing and build open source tools to interface Tone.js, Higher-Order Ambisonics (HOA) and other multichannel techniques. Students will perform/install their final on the 40-channel speaker array at Dave&Gabe’s studio in Bushwick. Topics include 3D sound, open source, space and listening. Prerequisites: willingness to listen critically, some programming experience. No formal music training required.
Interactive Telecommunications (Graduate)
2 credits – 12 Weeks
ITPG-GT 2485-000 (22868)01/27/2020 – 04/20/2020 Mon6:00 PM – 9:00 PM (Evening)at Brooklyn CampusInstructed by Mann, Yotam
How do you process data from connected devices? This class examines how to build systems to collect, process, store, and visualize data from connected devices. The class will review and discuss real world IoT systems using case studies and actual projects. We will build system using Arduino hardware and open source software. We will discuss how to IoT systems are built on commercial cloud infrastructure. Students will learn about IoT devices and the data pipelines for processing data. They will build an Arduino based device to send and receive data over WiFi via MQTT. Students will write code to move data from MQTT into a database. Students will learn how to query the database and present data as tabular data and graphs. To gain an understanding of an entire IoT system from device to application, we will start at a high level and then drill into each of the pieces — we will: * Discuss sensor hardware and wireless options (WiFi, Cellular, LoRaWAN, LTE-M, etc) for moving data to the server * Discuss transport options MQTT, CoAP, AMQP, HTTPS, etc. * Examine SQL, NoSQL, and Time Series Database * Look at tools and techniques for querying and visualizing data. Prerequisite: * Introduction to Physical Computing * Introduction to Computational Media (suggested) The class will be a mix of lecture, discussion, and building IoT systems. Real world examples and case studies will be used to demonstrate how IoT can be built.
Interactive Telecommunications (Graduate)
2 credits – 6 Weeks
ITPG-GT 2473-000 (22887)01/30/2020 – 03/12/2020 Thu12:00 AM – 2:00 PM (Early afternoon)at Brooklyn CampusInstructed by Coleman, Don
he course title, “Veillance” is a reference to the root of “surveillance” and “sousveillance”, watching from above and watching from below respectively. As digital media becomes a greater part of our everyday lives, it is important to understand the new forms of surveillance that it enables as well as to harness these capabilities and perhaps to create systems of sousveillance. Through the course, we’ll critically examine technologies that have become integral part of our lives; the technologies that drive the internet, the capabilities of web browsers, mobile phones, and the emerging class of networked devices such as IP cameras and Amazon’s Alexa and Google Home. Through the course of this examination, we’ll look at how this technology works, the policies that govern their use, what their benefits are, and finally look at what we are giving up by embracing them. This will be a hands-on endeavor; we’ll develop software to illustrate their use and misuse as well as looking for ways that we can harness their “veillance” capabilities for creative, educational, and possibly subversive purposes. Of course, in this process, we’ll pay particular attention to ethical and moral concerns. The course will have weekly reading and technical assignments, encompasses group work, and will culminate final projects.
Interactive Telecommunications (Graduate)
4 credits – 14 Weeks
ITPG-GT 2469-000 (23068)01/29/2020 – 05/06/2020 Wed12:00 AM – 2:00 PM (Early afternoon)at Brooklyn CampusInstructed by Van Every, Shawn