RISD DM2132 Code as Medium

Evelyn Eastmond eeastmon@risd.edu
Studio: Monday 8am - 1pm
Room: CIT, Room 302
TA: Tim Wang twang01@risd.edu
Office Hours: Wednesday 1pm - 3pm
Room: CIT 4th floor, windows
Overview | Schedule | Assignments | Examples | Resources | p5.js

Overview

This studio-based course will explore the technical and conceptual fundamentals of computer programming in the broader context of a sustained studio practice. In addition to teaching basic software coding skills from the ground up, the course will focus on the social and historical backgrounds of these technologies and how they shape the growth of media, identity, politics and the everyday. Related works from the contemporary art and design fields will be examined, ranging from visual, performance and sound art to architecture, product design and beyond. Students will be expected to engage with computer coding and related technologies conceptually or technically in their studio work.

The course will consist of introductory exercises in computer programming, discussions of articles related to contemporary digital media, frequent critiques, and an intensive final project that pushes the boundaries of computer coding as a creative tool. Mistakes, pitfalls and frustrations will be expected and encouraged as students navigate this quickly changing medium. No prior programming experience is necessary.

Assignments & Readings

The first half of the course will be structured around weekly assignments. The second half of the course will be dedicated to developing a longer project of your own choosing.

Assignments
Assignments will be posted weekly, and due at time and date indicated, check this website frequently!

Readings
There will be weekly assigned readings picked by your classmates. You will be required to pick one reading based on your interests and lead an informal discussion once during the semester. Readings can be articles, blog posts, videos, podcasts, etc. Pick something short and digestable that can be consumed in ~25 mins or less.

Asking for help

Studio
Use studio time to ask questions of me, the TA and your classmates.

Office Hours
The TA will have weekly office hours: Wednesdays 1pm - 3pm, 4th floor of CIT building by the windows.

Slack
I will not respond to personal emails with code questions. Please use the class Slack to ask questions instead! We will answer questions here so that everyone can learn, we also strongly encourage you to answer each other's questions. Please feel free to write with logistical, conceptual, or other questions!

More Resources
See the resources page for more pointers on where and how to get help.



Expectations

Programming can be challenging at first, but hang in there. Ask lots of questions of me, your TA, and your classmates. This course is intended to be useful to you and your studio practice. Let me know what you are interested in, and bring in exciting projects and examples you find.

The studio-based course/workshop will be highly interactive and your participation is critical. It includes preparing material and assignments, in-class discussions, critiques and collaborative work. Be ready to share what you're working on with others, failures can be just as interesting as successes.

Attendance is essential, if you are going to be absent or late notify me or the TA.

Grading

Since this is a studio course, grades are primarily based on your commitment to the medium and its application to your practice. This is not a grade-heavy course, but here are some guidelines to help ensure your progress in the class throughout the semester:

Assignments: Short 1-week assignments will be graded on a ✓-, ✓, ✓+ basis. If assignments average to less than a ✓, final grade will automatically drop one letter grade. Criteria: completeness of assignment as detailed in the assignments page.

Readings: You are required to bring in a reading and lead one discussion during the semester.

Midterm: Midterm critique will be graded on a ✓-, ✓, ✓+ basis. Criteria: preliminary sketch effort, completeness of idea and plan/outline for final project, critique participation.

Final: Final critique will be letter-graded and will be the largest factor in your final grade. Criteria: completeness of idea and final project, critique participation.

Participation: Consistent class attendance and class participation affects your grade.

Grade Breakdown:
Final Project (40%)
Assignments (30%)
Readings, picking and leading discussion (20%)
Attendance and participation (10%)

About code, p5.js and GP

This course is about experiencing computer code as a malleable medium, so you will encounter a few different ways of doing the same thing using new languages that are meant to make thinking about code more accessible and tinkerable. Most of the code you will be writing is based on a cutting-edge, fresh new version of Processing for the web called p5.js. It's meant to give you the same access to graphical, computational and logical structures that Processing offers with the additional ability to interface with common web paradigms and technologies. You will also be exposed to a graphical language called GP (General Purpose programming), which takes a visual spin on coding concepts.

Given that these languages are so new, you can help us make them better by letting us know when you run into confusing problems or bugs (problems in the code). These frameworks are experimental and fragile, like most materials you may already be used to.