MS 053: Intro to Code & Media Art
Course Information
SEMESTER: Fall 2025
LOCATION: Scripps College, Steele 229
TIME: Tuesday and Thursday 4:15-6:45, 8/25-12/3
Weekly class hours: 5 Hours
External study hours: 9 Hours
INSTRUCTOR
Vinny Roca, Scripps College
Email: vroca@scrippscollege.edu
Office Hours: Lang 227. By appointment; Tuesday & Thursday 1:30-2:30
Schedule office hours
Course Description
This interdisciplinary introductory course explores technical, artistic, and cultural aspects of programming. Using accessible and inclusive programming environments, students will learn the fundamentals of programming through making visual, interactive, and sound-based projects. Through readings and weekly discussions, students will engage with the political, economic, and cultural impact of code with a particular interest in code as an artistic medium and the power relations in programming.
Learning Outcomes
The objective of this course is to introduce the fundamental skills of programming for the arts and contextualize this technical knowledge within the cultural, social, economic, and political impact of programming. Through reading responses, projects, discussions, and technical tutorials, students will achieve the following learning outcomes:
- Technical proficiency in the fundamentals of object-oriented and procedural programming.
- Ability to analyze the role of programming in media art.
- Ability to analyze programming as a cultural, historical, and technical object.
- Gain a critical understanding of the history and cultural impact of programming.
- Ability to create visual, interactive, and sound-based media art projects using programming.
Grading, Assignments, Course Policy
Course Breakdown
| % | |
|---|---|
| 10 | Time |
| 15 | Narrative |
| 15 | Performance |
| 20 | Game Ring |
| 10 | Participation |
| 10 | Reading Responses |
| 20 | Exercises |
Letter Grading
| Number | Letter |
|---|---|
| 93-100 | A |
| 90-92 | A- |
| 87-89 | B+ |
| 83-86 | B |
| 80-82 | B- |
| 77-79 | C+ |
| 73-76 | C |
| 70-72 | C- |
| 67-69 | D+ |
| 63-66 | D |
| 60-62 | D- |
| 0-59 | F |
Evaluation Criteria
Projects
Completed projects will be graded using the following criteria:
| Technique | Is the assignment well-crafted? Is the conceptual idea behind the assignment supported by the technical and artistic decisions made by the student? |
| Concept | Does the student comprehend the scope of the assignment? Is the student able to communicate their ideas clearly? Does the student demonstrate comprehension of the concepts covered in class? Is the student able to articulate the concepts behind their work? |
| Generosity | Does the student exhibit insight, criticality, and risk-taking in their work? How much sensitivity and critical insight does the student display towards personal assignments and in critiquing their peers’ work? |
Exercises
Exercises are mainly for student practice and experimentation. Exercises will be graded on their level of completion following the exercise prompt.
Participation & Attendance
All students are expected to participate actively during the discussion periods and critiques.
Students more than ten minutes late for class will be marked as late. Three late marks will result in an unexcused absence. More than two unexcused absences may, at the instructor’s discretion, affect the final participation grade.
All classes are mandatory. If you anticipate missing a class or expect to have more than two absences during the course, inform the instructor as soon as possible.
Reading Responses
Reading responses are due by 5 p.m. the day before discussions. Reading responses should be posted in the proper Discord channel.
Reading responses will be graded on the level of engagement the student has with the text. Is the student connecting the text to other readings or experiences? Is the student engaging with the text through questions, disagreements, or new lines of thought?
As reading responses are essential to the discussion section of the course, late reading responses will not be accepted.
Late Work and Extensions
For all exercises, late work will not be accepted. Completing exercises on time is essential to the progression of the course. Not completing exercises will result in a student falling behind. In the situation that extra time is needed to complete exercises, students must reach out to the instructor as soon as possible.
Late projects not ready by their assigned crit day will automatically lose one letter grade. Each day the project is late, it will lose one more letter grade. After three days, the project will not be accepted.
Class Website
Class website will serve a a live syllabus, schedule, and notes for this course. All exercises and assignments are described on the class website.
Discord and Email
We will be submitting and sharing our exercises, reading responses and projects through Discord. Students will be invited to join the class Discord server on the first day of class.
I will respond to community Discord messages and email within 24 hrs of receipt. I will respond to messages sent over the weekend on the following Monday.
For course communication, please send me an email rather than a DM on Discord.
Readings
All external readings and videos will be provided using Box.
This link is password protected - password can be found in the class Discord.
Lab Hours && Course Materials
Students are expected to work on exercises and assignments outside of class. To complete some assignments, students will need to make use of their personal computer.
Students enrolled in this course will have 24/hr access to this computer lab. If you have any issues accessing the lab outside of the course hours, please contact me.
Unavailable times: M: 1:15AM - 5:30 PM; W:11:00AM - 2:30PM; T/R: 10:00AM - 12:30 PM
Note, some parts of this class will require:
- A personal computer with a camera, microphone, and sound output
- Headphones, wired or wireless
If you do not have access to this technology please contact me as soon as possible.
Use of Generative AI
ChatGPT and many other models, including Claude or CoPilot, can write code. As new programmers, this will be very helpful for you. However, it can also be detrimental.
The goal of this course is to teach you the fundamentals of programming and to explore how these fundamentals have drastically changed how one might approach being an artist. ChatGPT or other models can allow us to skip over these fundamentals, moving us to an endless cycle of copy, paste, test, copy, paste, test, and so on…
Coding, or the act of writing code, is always the last step. Before comes an intensive process of thinking, testing on paper, sketching, diagramming, or whatever approach you choose. Programming is not about writing code; it is about thinking and creating with our computers, knowing how changing variables or creating objects can give us both the results we aimed for, but also unexpected results.
In this way, ChatGPT can be harmful to the beginner programmer. It removes the need for a fundamental understanding and replaces it with the illusion of knowledge. I strongly suggest that over this course, ChatGPT becomes a last resort. There are many other resources available to you: In-class help, Discord messages, your peers, office hours, p5 examples, online videos, and much more. If you find yourself moving to type in a prompt, I suggest first asking yourself, “Is there more I can do to work towards this problem?”
Class Policy
Any code found to be copied and pasted from ChatGPT will be considered plagiarism.
Examples
Some bad uses of prompt-based AI:
- Write a p5 sketch to do x.
- Make this p5 sketch look more interesting.
Some good uses:
- How do I calculate points across the circumference of a circle?
- How do I find the distance between two vectors?
- How does a computer change the value of a variable in memory?
What these examples above tend to demonstrate is that good uses of ChatGPT assist us in our learning process as we write our programs.
There will be a temptation to make more complex projects with the use of ChatGPT. I urge you all to acknowledge your level of knowledge and abilities, and to trust that as you continue to make more art with code, as you write more and more complex programs, your knowledge of programming will grow, and so will your ability to know when ChatGPT and similar tools are supporting your learning.
Scripps College Land Acknowledgement
We would like to respectfully acknowledge that Scripps College sits within the historic homeland of the Tongva people. We acknowledge the painful history of genocide and colonization in our area. We acknowledge the strength and resilience of the Tongva people of the past, present, and future as the original caretakers of the land, water, and air, and we recognize our responsibility to be respectful stewards of the Scripps College campus. Today, this area and this campus are home to many Indigenous people from across the globe and we are proud that they are part of our community and institution.
Statement on Inclusion
We understand the classroom as a space for practicing freedom; where one may challenge psychic, social, and cultural borders and create meaningful artistic expressions. To do so we must acknowledge and embrace the different identities and backgrounds we inhabit. This means that we will use preferred pronouns, respect self-identifications, and be mindful of special needs. Disagreement is encouraged and supported, however, our differences affect our conceptualization and experience of reality, and it is extremely important to remember that certain gender, race, sex, and class identities are more privileged while others are undermined and marginalized. Consequently, this makes some people feel more protected or vulnerable during debates and discussions. A collaborative effort between the students and Instructor is needed to create a supportive learning environment. While everyone should feel free to experiment creatively and conceptually, if a class member points out that something you have said or shared with the group is offensive, avoid being defensive; instead approach the discussion as a valuable opportunity for us to grow and learn from one another. Alternatively, if you feel that something said in discussion or included in a piece of work is harmful, you are encouraged to speak with the Instructor.
Statement adopted from voidLab at https://github.com/voidlab/diversity-statement.
Accommodations
The instructor will work individually with each student on reasonable accommodations.
If you have questions about accommodations for the course, please do not hesitate to contact me.
Campus Disability Coordinators
- Pomona
- Claremont Graduate University
- Scripps College
- Claremont McKenna College
- Harvey Mudd College
- Pitzer College
- Keck Graduate Institute
Resources
Class Resources
- p5.js Reference
- p5.js
- Coding Train Videos
- Patt Vira Youtube Channel
- JavaScript Documentation
-
More advanced: The Nature of Code
- Further Reading: Aesthetic Programming
7C Student Resources
- Campus Safety
- Chaplains
- Chicano Latino Student Affairs (CLSA)
- Claremont Colleges Library
- The Claremont Colleges Services (TCCS)
- EmPOWER Center
- Health Education Outreach (HEO)
- Huntley Bookstore
- LiveSafe App
- Monsour Counseling and Psychological Services (MCAPS)
- Office of Black Student Affairs (OBSA)
- Student Disability Resource Center
- Student Health Insurance Plan
- Student Health Services
- Queer Resource Center (QRC)