Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Drawing, Moving, Seeing Code

Instructor: Lee Tusman
Pronouns: he/him
Course: NME2470 Tue 6:30 - 9:50pm
Classroom: Library 1015B
Office Hours: Tuesdays 4 - 6pm in Natural Sciences 3034

Course Description

An intermediate lecture/studio course that explores techniques for creating dynamic, poetic, and lifelike animations in code. Students learn techniques to program movement and the simulation of natural systems and behaviors, and develop works that respond to various inputs. Projects are developed using open-source software environments like Processing and p5.js.

Learning Objectives

Students will:

  • Gain skills and experience using open source creative coding environments as a medium for art
  • Develop poetic and critical experimental works in software
  • Critically engage with historic and contemporary computational art practices
  • Refine their personal learning strategies, project planning and problem solving skills

Additional Course Goals

Required Texts and Tools

  • The Nature Of Code, by Daniel Shiffman. We will be referring to this book throughout the course. It has been placed on 3-hour reserve in the library. You may choose to purchase the book in physical form, and a PDF download at a price you select is available. The entirety of the book is also available for reading online. Please note that the book's code is Processing but in this course I will primarily be teaching P5JS. All of the book's example code has been ported to p5js or downloaded at this URL.
  • A Text Editor such as Atom, Brackets, Sublime Text. I will primarily use and be able to support Atom but students are free to use the editor of their choice.
  • P5JS Alpha Editor. At the beginning of the semester we will be using the web-based Alpha Editor for working with P5JS.
  • Glitch. For more advanced projects requiring a server students may use Glitch, an online editor and version control system.
  • A Web Browser. I will be using Chrome in class and can provide assistance for Chrome's developer tools.
  • A notebook. Please bring a notebook and pen or pencil to class. Use it to jot down notes, respond to prompts, and for in-class sketching.
  • A way to store/backup your files, especially if you are using a classroom computer. Options include USB drives, Dropbox, or a university server. It is imperative that you back up your work!
  • We will be using Arena as a visual research tool to save websites and inspirations. Register an account on, which includes unlimited public blocks and 100 private blocks. You will need to upgrade to a premium account ($23.50 a year or $2.50 a month) if you exceed 100 private blocks.

University and Classroom Policies and Rules

Official Purchase College Academic Integrity Policy

The Purchase College academic integrity policy,, explicitly forbids cheating, plagiarism, and other forms of academic dishonesty. Plagiarism is the appropriation or imitation of the language, ideas, and/or thoughts of another person and the representation of them as one’s own original work. Students are responsible for familiarizing themselves with the definition of plagiarism and the acceptable methods of attribution.

Violation of any of the above may lead to formal disciplinary action and the following sanctions:

  • Minimum Sanction: Failing grade on the assignment or examination. Maximum Sanction: Expulsion
  • Recommended Sanction (First Offense): Failing grade for the course
  • Recommended Sanction (Second Offense): Expulsion

Students who have any questions or doubts about whether any activity is academically permissible should check with the instructor.

Plagiarism and cheating are taken seriously. You will be held accountable for Purchase's Student Code of Conduct for Academic Integrity.

Class policy on Collaboration

I support collaborative learning with some important caveats.

Coding can be difficult, and struggling with the material is part of the learning process. Students are allowed to collaborate to learn from each other. Do not collaborate in order to simply find out a solution to a project. Each participant should contribute approximately equally, and what you turn in should be your own. Copying a solution from another student, even if you change a few minor things such as variable names, is not a collaboration. You may help someone learn something, but you can not tell them what to code. If you have questions about collaboration or academic integrity, get in touch with me via email, talk with me before or after class, or come to office hours.

Tutoring Support

All students at Purchase College can take advantage of our tutoring services in the Learning Center and the Einstein Corner. These are free, 45-minute, peer-to-peer tutoring sessions in a variety of subjects and in writing across the disciplines. Sessions can happen in person or through the Online Writing Lab up to 3x/week. The OWL allows students to submit a paper draft and get written feedback by email within 48 business hours. We strongly recommend face-to-face meetings for first-year students and multilingual writers. The OWL is a good option for upperclassmen who have experience with in-person tutoring. You are encouraged to take advantage of this service to help you excel in this class, as well as your other courses. Please visit the Learning Center and Einstein Corner websites for more information.

Tutoring for the Fall semester will begin on September 4.


You will have in-class and outside of class coursework and homework in the form of code sketches and projects. All work is to be submitted on time prior to the start of classtime. For each day late, your grade will drop a part letter grade.

Academic Accessibility

Students with documented physical, learning, psychological, and other disabilities are entitled to receive reasonable accommodations. For those students who may require accommodations, please call or email the Office of Disability Resources, 914-251-6035,

It is my goal that this class be an accessible and welcoming experience for all students, including those with disabilities. You are welcome to talk to me at any point in the semester about course design concerns, but it is best if we can talk as soon as possible about the need for any adjustments. The Office of Disability Resources collaborates directly with students who identify documented disabilities to create accommodation plans, including testing accommodations, in order for students to access course content and validly demonstrate learning.

Tentative​ ​nature​ ​of​ ​syllabus.

If​ ​needed,​ ​this​ ​syllabus​ and the course outline ​may​ ​be​ ​revised​ ​to​ ​better​ ​suit​ ​the​ ​class.​ ​Students​ ​are​ ​responsible​ ​for​ ​keeping​ ​up​ ​with any​ ​changes​ ​distributed​ via ​e-mail​ ​or​ ​in​ ​class. The most up-to-date syllabus will always be on the classroom github repository at

Classroom Community


Students are expected to be present and on time to class every day. Absences should be excused by a doctor’s note. Three​ ​unexcused​ ​absences​ ​will​ ​lower​ ​your​ ​final​ ​grade​ ​by​ ​one​ ​unit​ ​(i.e.​ ​an​ ​A​ ​will​ ​become​ ​an​ ​B).​ ​With​ ​each additional​ ​unexcused​ ​absence,​ ​the​ ​grade​ ​will​ ​drop​ ​an​ ​additional​ ​unit.​ Arriving more than 15 minutes late for 3 classes is equivalent to an absence. If​ ​there​ ​is​ ​an​ ​emergency​ ​or​ ​otherwise​ ​extenuating circumstances​ ​that​ ​prevent​ ​you​ ​from​ ​being​ ​on​ ​time​ ​or​ ​attending​ ​class,​ ​please​ ​e-mail​ ​me.

We will be covering critical concepts and working on code and projects in-class and you are responsible for reviewing our class site and reaching out to your peers outside of class time to catch up on what you have missed.

Digital Distractions

Phones and laptops are extremely distracting and we are not as good at multitasking as we think. Studies demonstrate that students learn better when they use pen and paper rather than a computer. That said, this is a programming class. Your education is up to you. We are oversaturated with technology. I do not want to monitor you.

Please close your laptop while your fellow students are presenting work. You’re otherwise welcome to use laptops in class for classwork, not Facebook or Instagram or email. Please turn off all messaging notifications. Phones should not be used. For emergencies, go into the hallway to make a call.


We are all learners and educators. Your experience and participation is valid and necessary. I am not the sole source of information. You are responsible for and encouraged to be in charge of your own education. Leap forth into areas of interest. Teach and learn from others.

  • Please hold me accountable and point out areas that need to be improved.
  • This​ ​class​ ​is​ ​a​ ​collaboration​ ​between​ ​all​ ​of​ ​us.​ ​If​ ​you​ ​are​ ​feeling​ ​left​ ​behind,​ ​stuck,​ ​or​ ​frustrated​ ​in​ ​any​ ​way, please​ ​let​ ​me​ ​know​ ​immediately.​ ​I​ ​am​ ​here​ ​to​ ​help​.
  • Sleep enough hours. Good sleep will get you through college, reduce stress, help you do well in class, and feel better. And it's free.

Requesting Help

  • When you get stuck on a problem with your code and can't figure it out, take a good break such as taking a walk before coming back to try again. Try to explain your code's logic to a friend or family member, even someone who doesn't code.
  • You may wish to visit Einstein's Corner.
  • When contacting me about a coding issue, please send me a minimal version of your code, what you expected, and what you are getting. Please don't message me last minute. It can take me up to 24 hours to respond to emails, and longer on weekends or at the end of semesters. It is generally better for us to review your code together at office hours.


50% 3 class assignments (weeks 1-10)
20% Final Assignment (weeks 11-14)
10% Discovery and research exercises
20% Participation and attendance, and preparedness


  • Participation includes asking or answering questions in class, participating in office hours or co-teaching others, assisting in group work and conversations, participating in online forum, and in other ways.


Books (some are available to read online)



Drawing Moving Seeing Code, Fall 2018 • Purchase College






No releases published


No packages published