LE/EECS 1720 3.0 Building Interactive Systems

(aka Progamming for Digital Media 2)

Winter 2022

Digital Media Program (Lassonde)
Digital Media Program (AMPD)

Digital Media Gallery

Department of Electrical Engineering & Computer Science,
York University

For additional information, see the course page on eClass!

For full participation, see the class organization robots-make-art-too on GitHub!

Course Description

A second course teaching more advanced programming concepts within the context of image, sound and interaction using an object-oriented language; introduction to interactive systems, user interfaces, event-driven programming, object design and inheritance; implementation using debuggers, integrated development environments, user interface builders.

This Year's Theme: Global Arts Collective

2022 COURSE SYLLABUS

In keeping with the ongoing remote-ness that is COVID-19 we will consider ourselves to be team members in a Global Arts Collective (or if you prefer 'a Distributed Software Company') - "how would remote team members, each with different skills and backgrounds, come together digitally to contribute to an interactive web-based exhibition? what will this look like? how will we keep track of the code? who does what? is it a virtual reality? does it have physical components in a physical location?".. in this way we will work with 'real-world' constraints (different time zones, different locations, online and remote access etc.) and develop methodologies to tangibly engage with an 'intangible' audience.

OUR OBJECTIVE: Submit our Group Interactive Art Projects to the Digital Media End of Year Exhibition. ...you might even consider submitting a collection of your individual 1720 (and/or 1710) work?

During lectures we will follow a complementary and comparative process where students will expand on the JAVA - processing framework with both P5.js and processing.py - JavaScript and Python - providing a foundation for future Digital Media development for integrated software (e.g., NodeJS, React) and hardware (e.g., CircuitPython) systems.

Processing is not a single programming language, but an arts-centric system for learning, teaching, and making visual form with code.

What's New:

Instructor

Sarah Vollmer
Office: TBD | EECS 17xx Discord Server
Email: workscv

Lectures

Tuesday and Thursday from 14:30 to 16:00 - Zoom

Instructor Office Hours

Tuesdays, Wednesdays, Thursdays - Discord after class/labs

Textbooks (Optional)

Levin, Golan, and Tega Brain. Code as Creative Medium: A Handbook for Computational Art and Design. MIT Press, 2021.

more optional reading TBA

Prerequisites

General prerequisites; LE/EECS1710 3.00 Programming for Digital Media.
You should be familiar with Git, Github.
You should know Processing (java version - EECS 1710 competency).

Tentative Evaluation

100 Days of Code (100 @ 0.1%)     10%
Quizes (4 @ 5%)      20%
Group Project (3 Phases: 5%, 10%, 15%)      30%
Individual Lab Projects (4 @ 10%: 2 parts each 2%, 8%)      40%
Total 100%

Tentative Schedule - check back for updates

Academic Honesty

It is important that you look at the departmental guidelines on academic honesty. You must cite all sources that you use - yes even if you adapt and borrow code!

Readings and Lecture Content

References

Some links to get started:

Beginners guide to git/github
How to check running Linux Processes
Processing

Some suggested reading:

Levin, Golan, and Tega Brain. Code as Creative Medium: A Handbook for Computational Art and Design. MIT Press, 2021.

Shiffman, Daniel. Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction. 2nd ed. Morgan Kaufmann, 2015.

Shiffman, Daniel. The Nature of Code: Simulating Natural Systems with Processing. 2012.

Gonzalez Vivo, Patricio, and Jen Lowe. The Book of Shaders. 2015.

Marino, Mark C. Critical Code Studies. MIT Press, 2020.

Sack, Warren. The Software Arts. MIT Press, 2019.

Benjamin, Ruha. Race After Technology: Abolitionist Codes for the New Jim Code. Polity Press, 2019.

Moser, Mary Anne (ed.) and MacLeod, Douglas (ed.) Immersed in Technology: Art and Virtual Environments. MIT Press, 1996.

Boden, Margaret A. and Edmonds, Ernest A. From Fingers to Digits: An Artificial Aesthetic. MIT Press, 2019.