June 3 - 09:30 am


June 4 - 05:00 pm

Click to Register:

Brooklyn Research


Brooklyn Research

630 Flushing Avenue 6th Floor, Brooklyn, NY 11206

Brooklyn, NY, US, 11206

This is a class for designers and other visual artists wanting to use code to produce systematic graphic designs. The two-day workshop is structured around the basic elements of graphic design (form, color, typography, grid systems, etc), but participants will use a programming language instead of a traditional design tool to create algorithmic generative designs. Students will learn how to create procedural shapes, generate dynamic color schemes, use randomization to create dynamic designs, and publish it all to the web. The class is taught in P5.js, a JavaScript library aimed at making coding accessible to artists, designers, educators, and beginners.

Although this course requires no prior knowledge about JavaScript, students are encouraged to familiarize themselves with P5.js before the class by watching Daniel Shiffman’s Foundations of Programming in JavaScript playlist on YouTube.


Programming Design Systems is taught by Rune Madsen, a New York-based artist, designer, and educator who use programming languages to create things with the computer. Rune is currently writing a book called “Programming Design Systems”, which this class is based on.



Where is brooklyn Research located?

We are on the 6th floor of the old Pfizer Building, at 630 Flushing Avenue, but the main entrance is at 28 Tompkins Avenue. The building is easily accessible from the G train (Flushing Ave station) and from the J/M trains (Flushing Ave station).

What do I need to bring?

Please come with your laptop and charger. Be sure to have your favorite text editor installed (Sublime Text, Atom), as well as a modern browser (we recommend Chrome).

How can I contact the organizer with any questions?

Please send us an email at

What’s the refund policy?

Purchases are 100% refundable up until 2 days before the event: if the workshop start Saturday morning, your tickets is refundable until Wednesday 11:59pm. If you decide you cannot go after the refund deadline, you can transfer your ticket to someone else but you must let us know by email at