Instructor: Lee Tusman
Pronouns: he/him
Contact: Lee.Tusman@purchase.edu
Classroom: CMFT 3043 Days: Tuesdays 10:30am - 2pm
Office Hours: Mondays 11am - 1pm, arranged via email
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.
Students will:
It is my goal that we collaborate together to create a community of learners. I will try to serve as coach rather than boss and help you pursue your own learning goals and I am excited to learn from you as well. I will vary my teaching methods to make sure that the course is accessible to all students. I believe everyone has the ability to do well in this course. I will be accessible to you during class sessions, by email, and by message board. I want you to succeed both in our class and at Purchase. I will always try to help you.
I am not the sole source of knowledge for this course. As digital natives and as people with your own background and interests you are all experts as well. Most importantly to me, please pursue those subjects that interest you deeply and share them with your classmates and me.
The Office of Disability Resources collaborates directly with students who identify with disabilities to create accommodation plans, including testing accommodations, in order for students to access course content and validly demonstrate learning. For students who may require accommodations, please contact the Office of Disability Resources as soon as possible: 914-251-6035, ODR@purchase.edu (Student Services Building, #316A), www.purchase.edu/odr
The Purchase College academic integrity policy, purchase.edu/live/blurbs/840-academic-and-professional-integrity, 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.
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.
The use of ChatGPT and other similar Large Language Models are prohibited for writing and coding assignments, unless otherwise cleared with the professor. The point of this class is to learn the material by wrestling with it. I believe these systems prevent the learner from actually learning the material and being able to put it to use. Additionally, information is often wrong, poorly written, unattributed, contains biases, and the process of running machine learning is quite bad for the environment.
I do make exceptions for this hard rule: you are permitted the use of these for exploratory investigation if you so choose. “What are examples of artists working with artificial life?”, “What are some of the techniques game developers use to create procedurally generated 2d top down levels?” These are exploratory questions that can help lead you to find new sources. But your own turned in writing, artwork and code should be by you. Should you have questions on this policy, come and speak to me.
Violations of this policy will be treated the same as academic dishonesty and plagiarism.
All students at Purchase College can take advantage of our tutoring services in the Learning Center (Lib 0009) and the Einstein Corner (NSS 3044). These are free, 45-minute, peer-to-peer tutoring sessions in a variety of subjects and in writing across the disciplines. I encourage you 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.
Learning programming is a cumulative effort. Each class builds on what you have learned in previous classes. Missing class can substantially set you back in this process. Therefore, it is important that you attend every class. Absences should be excused by a doctor’s note. Three unexcused absences will lower your grade by one unit. (i.e. an A will became a B). With each additional unexcused absences, the grade will drop an additional unit for each absence. If there is an emergency or otherwise extenuating circumstance that prevents you from attending class, please email 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.
There will be 3 designated times to provide feedback to the professor during the semester: during the first week of class, mid-semester, and as feedback at the end of the semester. You can also approach me in class or during office hours at any other time in the semester to give feedback. Please hold me accountable and point out areas that need to be improved.
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 email or in class. The most up to date syllabus will always be up to date on the class site.
For the weekly class assignments, I am primarily looking to see that you were engaged in the work, worked through challenges, and produced creative artistic, computational work. Your weekly writing on the work is essential for demonstrating this and sharing the work you’ve done.
Even if you get stuck, are unable to finish, or produce “incorrect” results, please turn in your work, even if incomplete to receive credit for your work. No work turned in means I have no way to see where you got stuck, what help you need, and what you worked on.
None of these (except perhaps an external hard drive or paper) cost any money, though you are welcome and not required to make donations to open source projects.
The primary language (library) we use in the course is p5.js.
All of our sources will be available to read online for free, many via our library or due to the author’s making them available.
There will be readings throughout the semester. All will be available digitally at no cost, via a web browser or via the library as an e-book or a PDF.
Icon by Elastic1 on Freepik