Introduction to Machine Learning for the Arts

Yining Shi | IMNY-UT 224 | Fri 5:20pm to 8:20pm in 370 Jay St, Room 408 Meetings:14
Last updated: July 3, 2025
Show Course Description

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 generative models including text generation models and image generation models. Principles of data collection and ethics are introduced. Weekly assignments, team and independent projects, and project reports are required.

Some experience and basic familiarity with programming is a plus, but not required.

CNC and More (Topics in Fabrication)

Phil Caridi | IMNY-UT 250 | TBD Meetings:
Last updated: July 3, 2025
Show Course Description

Take your digital fabrication skills to the next level. This class will focus on 3-axis CNC, 4-axis CNC, the Shaper Origin, the Bantam Desktop Mill, Metal Laser Cutting, advanced handheld router techniques, and the wood lathe. This course will also focus on exploring design considerations for digital fabrication.

Anatomy of Truth (Topics in Design)

Yuliya Parshina-Kottas | IMNY-UT 271 | Fri 12:20pm to 3:20pm in 370 Jay St, Room 408 Meetings:7-First Half
Last updated: July 3, 2025
Show Course Description

This course will explore current and historical misinformation, disinformation and propaganda campaigns in the global media landscape through the lens of visual information design. Students will identify misleading and malignant visual content in online and broadcast media and analyze it using a design framework grounded in information design principles, visual storytelling concepts, user research practices and journalistic ethics. Working in groups, students will apply the same design framework to create a media literacy campaign addressing a specific misinformation, disinformation or propaganda trend.

Mobile Application Development (Topics in Computation and Data)

John Henry Thompson | Syllabus | IMNY-UT 220 | Fri 09:00am to 12:00pm in 370 Jay St, Room 408 Meetings:14
Last updated: July 3, 2025
Show Course Description

One of the most transformative consumer products in history, the iPhone remains the standard bearer for great design and user experience. With the latest versions of iOS and iPhone, Apple puts depth sensing and augmented reality in our pockets. How do we take advantage of this incredible platform to produce our own compelling experiences?

This course will be a hands-on workshop where we explore the world beyond generic apps and push the boundaries of what’s possible on iOS hardware. Each week, you’ll be asked to complete a programming exercise meant to foster your understanding of iOS application development. We’ll leverage existing open source libraries to quickly build out your app with features such as real time communication and cloud storage.

We aim to create distributed instruments for computed expression.

Full-time access to an iOS device and a Mac laptop computer running the latest operating system and development tools are required.

Prerequisite: Creative Computing or equivalent programming experience, and willingness to learn Apple’s Swift programming language.

Immersive Experiences

Thomas Martinez | Syllabus | IMNY-UT 282 | Fri 12:20pm to 3:20pm in 370 Jay St, Room 409 Meetings:14
Prerequisites: Creative Computing or permission of the instructor |
Last updated: July 3, 2025
Show Course Description

This course is designed to provide students with hands-on experience creating immersive experiences, with a focus on designing artistic, meaningful worlds for virtual reality headsets. The class will also touch on related technologies, methods, and fields including experience design, virtual painting, augmented reality, interactive installation, and 360 video/audio. The course materials will also include readings and discussions on prior art/relevant critical texts. This class uses VR as a lens for understanding experience design in general. Some basic familiarity with programming, image-making, and time-based media is a plus, but not required.

Communications Lab: Hypercinema or equivalent experience.

Creative Computing

Dan O'Sullivan | Jack B. Du | Ellen Nickles | David Rios | Carrie Sijia Wang | Daniel Shiffman | Syllabus | IMNY-UT 101 | Fri 3:40pm to 6:40pm in 370 Jay St, Room 409 Meetings:14
Last updated: July 3, 2025
Show Course Description

This course combines two powerful areas of technology, Physical Computing and Programming, and asks students to consider their implications.  It will enable you to leap from being just a user of technology to becoming a mindful creator with it.

The course begins with Physical Computing, which allows you to break free from both the limitations of mouse, keyboard and monitor interfaces and stationary locations at home or the office. We begin by exploring the expressive capabilities of the human body and how we experience our physical environment. The platform for the class is a microcontroller (Arduino brand), a very small inexpensive single-chip computer that can be embedded anywhere and sense and make things happen in the physical world. The core technical concepts include digital, analog and serial input and output.

The second portion of the course focuses on fundamentals of computer programming (variables, conditionals, iteration, functions & objects) as well as more advanced techniques such as data parsing, image processing, networking, and machine learning. The Javascript ‘p5’ programming environment is the primary vehicle. P5 is more oriented towards visual displays on desktops, laptops, tablets or smartphones but can also connect back to the physical sensor & actuators from the first part of the class.

What can computation add to human communication? The ultimate question of this class is not “how” to program but “why” to program. You will gain a deeper understanding of the possibilities of computation in order to see how it applies to your interests (e.g. art, design, humanities, sciences, engineering). In addition to weekly technical assignments there are blogging assignments, usually reacting to short readings, allowing you to reflect in writing about the nature of computation and how it fits into your life and into human society. 

There is an even workload each week of a technical production assignment and a writing assignment but none of them are big.  The course is designed for computer programming novices but the project-centered pedagogy will allow more experienced programmers the opportunity to go further with their project ideas and collaborate with other students.