Spring 2021 Weekly Schedule

Week 1 (Jan. 18 & 20)

Primitive shapes, Programming concepts

Install Processing on your computer: https://processing.org/download/


    • Production:
      • Due Jan. 25 (post documentation on blog): Make a self-portrait using Processing.
        • The portrait must be entirely created by your code i.e. you must not interact with your computer while the portrait is being made (e.g. no drawing using the mouse)
        • The portrait does not need to be dynamic (i.e. it does not need to change while we look at it)
        • The portrait does not need to be realistic. The purpose is to practice using the simple drawing functions.
    •  Reading:
Week 2 (Jan. 25 & 27)

Animation, Conditionals, Loops


Week 3 ( Feb. 1 & 3)

Functions, Arrays, and Object-Oriented Programming


  • Production:
    • Due Feb. 8th (post documentation on blog): Create either an artwork or a game using Object-Oriented Programming. You may use arrays if you wish. Pay attention to the structure, clarity, and organization of your program. As always, document your project:
      • Well commented code, especially for any confusing or tricky parts
      • References to any examples or inspiration
      • Functions as needed to organize your program
      • Excellent names for variables and functions
      • Post code and one or more images
      • Describe the overall concept of your game or artwork
      • Include the image(s) or link(s) to video
      • Describe any problems you ran into
  • Reading:
Week 4 (Feb. 8 &  10)

Loading Data, Displaying text  (for class)


Week 5 (Feb. 15 & 17)

Image Processing, introduce Midterm Project (download for class)


  • Production:
    • Due this Wed.  Feb. 17th (no blog post needed): Bring an idea (or ideas) to class for your midterm. We will spend part of class on Wednesday working on your midterms.
    • Due Feb. 24th (post documentation on blog): Make some progress on your midterm project:
      • Midterm Project:
        • Make a game using everything you have learned so far
        • Due Mar. 3rd
        • Can be one or more players
        • Must include
          • At least one shape
          • At least one image
          • At least one sound
          • At least one on-screen text
        • The game must start with a screen giving instructions, and must wait there until a button or key (your choice) is pressed
        • After the game is won or lost, there must be a way to restart the game without closing and restarting the program
  • Reading:
  • Extra Credit (Due Feb. 21st):
    • Attend Lauren McCarthy’s talk Sunday 21 Feb. 7 pm (zoom). Bring one question to the talk you would like to ask her.
Week 6 (Feb. 22 & 24)

Sound (download files for use in class)


  • Production:
        • Complete Midterm
Week 7 (Mar. 1 & 3)
Midterm due – Mar. 3

Assignments (do this before Mar. 17):

    • Prepare a space for working with electronics
      • Have your kits ready to use in class
      • Have some space to work. There are many small components in the kit that will be easily lost, so ideally be seated at a table or desk with clear space around you.
    • Install the Arduino IDE from here. If you are on Windows chose the Windows Installer.
    • In your kit is a bundle of jumper wires with a very tight ziptie that must be carefully removed. Please do this before class because it may take you a while to find the right tool. A sharp pair of scissors should work. A knife might damage the wires and hurt you.

    • Be careful not to damage the wires or yourselves!
Week 8 (Mar. 17)

Introduction to Electricity


Week 9 (Mar. 22 & 24)

Arduino: digital input & output, analog input & output, printing


  • Production:
    • Due Mar. 31st (post documentation on blog): Get information from at least one analog sensor and at least one digital sensor (switch), and use this information to control at least two LEDs, one in a digital fashion and the other in an analog fashion, in some creative way.
  • Reading:
Week 10 (Mar. 29 & 31)

Sound, Servo motor, Mapping


  • Production:
    • Due Apr. 7th (post documentation on blog):  Make a musical instrument
      • You must use at least one digital sensor (switch)
      • You must use at least one analog sensor (photoresistor, potentiometer, or distance measuring sensor)
  • Reading:

Week 11 (Apr. 5 & 7)

Serial Communication, introduce Final Project


  • Production:
    • Due Apr. 12th (each person, not just one for a group, should post code for each exercise, and video of just the LED lighting up with the ball bouncing) Work in the groups from class to finish the three in-class examples exercises:
      1. make something that uses only one sensor  on arduino and makes the ellipse in processing move on the horizontal axis, in the middle of the screen, and nothing on arduino is controlled by processing
      2. make something that controls the LED brightness from processing
      3. take the gravity wind example (https://github.com/aaronsherwood/introduction_interactive_media/blob/master/processingExamples/gravityExamples/gravityWind/gravityWind.pde) and make it so every time the ball bounces one led lights up and then turns off, and you can control the wind from one analog sensor
    • Groups:
      • Adina Simran
        Zharmakhan Aruzhan
        Cole Minh
        Shaikha Thais
        Armaan Maaz
        Shreya Rock
        Hamad Varya
        Alima Ngoc
    • Due Apr. 12th (post documentation on blog): Write a preliminary concept for your final project, which must incorporate both Arduino and Processing.
      • Final project prompt (examples are listed on syllabus page)
        • Create a physically interactive system of your choice that relies on a multimedia computer for some sort of processing or data analysis. The Final should use BOTH Processing AND Arduino.Your focus should be on careful and timely sensing of the relevant actions of the person or people that you’re designing this for, and on clear, prompt, and effective responses. Any interactive system is going to involve systems of listening, thinking, and speaking from both parties. Whether it involves one cycle or many, the exchange should be engaging.You may work alone or in groups.
    • EXTRA CREDIT Due Apr. 14th (post documentation on blog): Make a simple game that involves some kind of communication between Arduino and Processing
Week 12 (Apr. 12 & 14)

DC motors, Construction and Debugging, Final Project Proposal


  • Production:
    • Due Apr. 14th (post documentation on blog): Refine your final project proposal, include the following:
      • Finalized concept for the project
      • Description of what your Arduino program will do with each input and output and what it will send to and/or receive from Processing
      • Description of what Processing program will do and what it will send to and/or receive from Arduino
    • Due Apr. 19th (post documentation on blog): begin working on your final project, try to get the parts you think will be hardest completed.
Week 13 (Apr. 19 & 21)

Work on Final Project


  • Production:
    • Due Apr. 26th (post documentation on blog):
      • Get your project 90% complete
      • Conduct user testing (record video)
Week 14 (Apr. 26 & 28)

Complete Final Project


  • Final Project and final project documentation due at the beginning of class, May 3rd
Week 14.5 Last Class (May 3)
Final Project Due May 3rd