Electronic Media Studio: Interactivity and Computation (60-212) is a practical introduction to programming and computational media production within the context of the arts. In this "intromediate" level course, students develop the skills and confidence to produce interactive artworks, discuss their work in relation to current and historic praxes of digital art, and engage new technologies critically.

This is a "studio art course in computer science", in which our objective is art and design, but our medium is student-written software. Intended as a second course for students who have already had one semester of elementary programming (in any language), this class develops craft skills in text-based, imperative programming using a variety of creative coding toolkits, including p5.js and Basil.js (JavaScript), Processing (Java), Arduino (C), and Unity3D (JavaScript/C#). Through rigorous programming exercises in these environments, students will develop mastery over the basic vocabulary of constructs that govern static, dynamic, and interactive form, with the aim of applying these skills to problems in interactive art, computational design, and other creative explorations of transmediality, connectivity, generativity, and immersivity.


Upon successful completion of this course, students will:

  • Be proficient in creating computer programs capable of responding to user interaction, in a variety of different creative coding tools, such as p5.js, Processing, Arduino, and Unity3D.
  • Gain familiarity with the repertoire of artists, designers, works and activities around interactive art, generative form, and computational design.
  • Understand the role of computation in artworks that explore concepts of transmediality, connectivity, generativity, and immersivity.
  • Understand how to document and present creative work online, and in person.


This is a studio course, whose emphasis is the development of craft fluency through regular practice. This course expects students to produce weekly Deliverables, which consist of Projects and Looking Outwards reports. All Deliverables are to be posted (according to requested requirements) on the course WordPress website. There are eight main Projects due at approximately weekly intervals, including a multiphase project with a proposal, check-in, and public exhibition phase. In addition, students will write eight "Looking Outwards" research reports based on Internet and/or library research.

The projects for Fall 2018 are as follows. Note that this list (and its order) may be subject to change.

  1. Geometry Test; Recode (Due 9/7)
  2. Graphic Loop (Due 9/14)
  3. Clock (Due 9/21)
  4. Multiuser Environment (Due 9/28)
  5. Body/Gestural Visualization (Due 10/12)
  6. Mechatronic Automaton (Due 10/31 & 11/2)
  7. Generative Book (Due 11/16)
  8. Virtual/Augmented Reality (Due 12/7)

In addition to the above, students are also expected to write eight Looking Outwards reports. For these small assignments, you are asked to "look outwards" -- to browse various resources in order to deepen your knowledge of the field. You are expected to report on your findings with a critical perspective. For some weeks, the "Looking Outwards" deliverables may be thematically oriented. After completing the sequence of Looking Outwards reports, students will be able to:

  • Demonstrate familiarity with historic and/or contemporary new-media projects relevant to that student's specific research interests; and
  • Demonstrate familiarity with new-media projects that exemplify cultural practice with widely-used arts-engineering toolkits and/or with specific technologies.