Courses
A selection of courses on creative coding and design.
Coding Kinetic Type
Every day designers use code to create experiences that are expansive, dynamic, and playful. Through the use of code, we can unlock new and imaginative possibilities for typography through animation and interaction.
In this workshop we explore the basics of kinetic typography on the web using HTML, CSS and Variable Fonts.
Taught at Letterform Archive in Spring 2024 and at Type@Cooper in Spring 2023 (as Animating Variable Type with Code)
Drawing Instructions
Inspired by Sol LeWitt's Wall Drawings, this workshop explores the intersection of instruction and expression. LeWitt revolutionized conceptual art by creating detailed instructions for drawings that could be executed by anyone, anywhere - making the instruction itself the artwork.
Taught at Russell Sage College in Spring 2025
Generative Typography
If typography is the study of using forms to communicate meaning, then can code help us discover new forms? If we apply generative techniques to the field of graphic design can we end up creating typography systems that are novel and always changing?
In this workshop, students use code to create interactive and novel typographic experiences. We cover the basics of JavaScript and creative coding using the library p5.js.
Taught at MICA in Spring 2022 and Type@Cooper in Fall 2022, Fall 2023
Graphic Design 2
Designing for screens demands that we rethink fundamental principles of composition, hierarchy, and interaction. As designers we must question how traditional graphic design wisdom translates to the fluid medium of the screen.
In this course, students craft responsive design systems using HTML and CSS, learning how code becomes a creative tool, not just a technical one. Through hands-on projects, we explore how layout, typography, and interaction combine to create meaningful digital experiences.
Taught at MICA in Spring 2024, Fall 2024
Painting with p5.js
Digital painting tools shape our creative expression in profound ways, from the pixel-perfect precision of Photoshop to the organic brushstrokes of Procreate. By examining how these tools shape our marks, we start to see their biases and imagine alternatives.
In this workshop, students create their own digital painting tool. We cover the basics of JavaScript and creative coding using the library p5.js.
Taught at Index in Fall 2023
p5.js for Visual Designers
Code lets you extend your tools or build new ones entirely. As software is becoming increasingly critical to our design practices, there is an opportunity to rethink our relationship to the idea of a “design tool” and build our own.
In this workshop, students how to use code as a design tool and creative medium. We cover the basics of JavaScript and creative coding using the library p5.js.
Taught at Type@Cooper in Summer 2023