Skip to content

NYUProgrammingPhysicalObjects/Syllabus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 

Repository files navigation

#Programming Physical Objects Syllabus

  • Polytechnic Institute of New York University

  • Department of Technology, Culture and Society

  • Integrated Digital Media

  • DM-GY 9103A: Programming Physical Objects

  • Tuesdays 7:30 – 9:50 pm

  • MetroTech 2 room 817

  • Spring 2015

  • Instructor: Katherine Bennett

  • Office hours: by appointment

  • katherinebennett@nyu.edu

  • www.katherinebennett.net

##DM-GY 9103A Programming Physical Objects##

In this graduate course, students will study physical computing as a means to create interactive systems that translate human expressions from the surrounding world to the digital world, using both software and hardware. Taking the human body as a given, students will learn how a computer converts the changes in energy given off by our bodies – sound, light, heat, motion, etc. – into changing electronic signals that computers can read and interpret. Students will learn to build and program their own micro-controller board, with an emphasis on techniques and approaches for the generation of temporal and spatial processes. Through discussions of interactivity, students will design computing applications that utilize these forms of physical expression. Possibilities include the control of kinetic sculptures, custom performance interfaces, installations, the presence of sound or light and reactive/interactive/responsive works.

##Program Objectives:

At a graduate level students will:

  • develop conceptual thinking skills to generate ideas and content in order to solve problems or create opportunities.
  • develop technical skills to realize
  • develop critical thinking skills that will allow them to analyze and position their work within cultural, historic, aesthetic, economic, and technological contexts.
  • gain knowledge of professional practices and organizations by developing their verbal, visual, and written communication for documentation and presentation, exhibition and promotion, networking, and career preparation.
  • develop collaboration skills to actively and effectively work in a team or group.

##Course Objectives:

  1. To gain an articulate an awareness and sensitivity of interactive systems, including the difference between reactive, interactive and responsive systems
  2. To design engaging interactive systems, which encourage interaction and exploration
  3. To design systems which liberate the computer from traditional definitions and to exist within the physical world around us.
  4. Competent circuit construction
  5. Further development/utilization of programming skills
  6. Completion of several projects for group critiques

##Course Structure Part I: Basic circuits, basic programming, input and output Part II: Networking and reliable interaction Part III: Final Project

##Class Structure Class will be comprised of lectures, workshops, class discussion, and critiques.

7:00 – 8:30 Lecture, Demo, Discussion
8:30 – 9:30 Workshop
9:30 – 9:50 Tickets to Leave, Questions

##Attendance

Attendance does affect your grade. You are allowed 1 unexcused absence (without a note from a doctor or agency). Afterwards, each absence lowers your final grade by ½ a letter. Having more than 3 absences is grounds for failing the course.

Tardiness is not tolerated. After being tardy twice, each subsequent tardy counts as ½ an absence.

Presentation/Critique days are mandatory. An absence or tardy on critique days lowers your project grade. I expect everyone to show up on presentation days and to participate in critiques and discussions. Also expected, is for everyone to have something to show on these days, whether the work is complete or not. The process and the problems you are encountering are important to share and discuss. If for some reason, you do not have something beyond your initial stages to show on critique days, or nothing at all, I expect to have communication from you prior to that day. You are still required to be here on those days, to discuss other students’ work. Your work is due regardless if you are here or not. Days cannot be made up.

Contact me in advance if you will not be in class. Email is preferred. Demonstrate time management, communication and respect.

Material missed is the responsibility of the student to make up. Speak to several other classmates in order to find out what we did in class. It is your responsibility to go over that material independently. It is your responsibility to contact me if you continue to have difficulty with the material.

##Correspondence & Communication

Email is the preferred initial contact (katherinebennett@nyu.edu). Email is suitable for short questions (to answers that cannot be found in the syllabus), to set up appointments, or to notify me about being late or absent. Emails should not be longer than 5 sentences.

For matters longer than 5 sentences, please email me to make an appointment during office hours. This is the proper way to address longer questions, issues, to ask me about an assignment, review a grade you received, or to discuss other matters. If you send me a long email, I am simply going to respond by asking you to meet with me to resolve the matter. I will not resolve matters over email.

If I have asked you to schedule an appointment with me, I am not trying to avoid you. I am offering you my full attention and preparation. Due to my schedule and other campus responsibilities, I ask you to respond to emails and to be respectful of time.

##Educational Access

If you are student with a learning difference (aka disability) who is requesting accommodations, please contact New York University’s Moses Center for Students with Disabilities at 212-998-4980 or mosescsd@nyu.edu. You must be registered with CSD to receive accommodations. Information about the Moses Center can be found atwww.nyu.edu/csd. The Moses Center is located at 726 Broadway on the 2nd floor.

##Prerequisites / Hardware / Software

This class assumes no prior knowledge of physical computing, but it does some presume you have had light exposure to programming. Having prior exposure to Processing, Max/MSP, OF, etc is awesome. We’ll be working with Arduino microcontrollers, electronics, Kinects, and Max/MSP, Processing and Arduino Software.

##Required Materials and Texts

##Suggested Texts

  • Make: Electronics by Charles Platt;
  • Making Things Move by Dustyn Roberts; ISBN- 978-0-07-174167-5
  • Getting Started with Arduino by Massimo Banzi; 978-0-596-15551-3
  • Processing: A Beginner’s Guide to Programming, Images, Animation and Interaction by Daniel Shiffman;
  • Programming Interactivity, Second Edition by Joshua Noble
  • Getting Started in Electronics by Forrest Mims III
  • Making Things Talk: Practical Methods for Connecting Physical Objects by Tom Igoe
  • Fashioning Technology: a DIY Intro to Smart Crafting by Syuzi Pakhchyan
  • Handmade Electronic Music: The Art of Hardware Hacking by Nicolas Collins

##Extremely Useful Links (information):

##Material Resources Links (supplies for projects)

##Grading Your final grade will be based upon the following:

Exercises: Daily Sensors, Sensor Taming – 5% each/10% total Design: Fantasy Device Mock-up, Custom Switch – 10% ea/20% total Stupid Pet Tricks I & II – 15% each/30% total Final Prototype (Alpha) – 10% Final Project – 25%

Grades will be attributed to work based on your understanding and comprehension of the course materials (both from the texts and lectures), creativity, craft as well as professionalism, engagement and your improvement/development. All of these will be evident in your projects and participation throughout class.

Please see the chart below for examples.

grade rubric

##Technology in the Classroom Laptop use is fine if you are using your laptop to present in class, or if we're in the middle of an exercise that makes use of it. Otherwise, however, please keep your laptop closed. The quality of the class depends in large part on the quality of your attention and active participation. In particular, give your fellow students the respect you deserve in return, and close your laptop and give them your full attention when they are presenting work.

##Course Outline: (tentative. subject to change at any time. Check your email)

###Part 1: Basic circuits, basic programming, input and output

###Week 1: January 27 - Introductions, Syllabus, wireframes, interaction

####For Homework:

  • Read:
    • The Art of Interaction Design by Chris Crawford, Ch. 1 & 2
    • A Brief Rant on the Future of Interaction Design by Bret Victor
    • Tangible Bits: Towards Seamless Interfaces between People, Bits and Atoms by Ishii and Ullmer
  • Do:
    • Look through your kits and familiarize yourself with all the parts and their roles. Be able to identify parts visually and know their role/task. See the Make reference pages emailed to you.

###Week 2: February 3 -In Class: - Workshop: Basic Circuits, parallel & series, ohm, switches

  • For Homework:
    • Read:

    • Do: Exercise 1:Sensor Walk - Spend a day noting every time you encounter a sensor, touchscreen, camera, or any other device with which you or someone interacting with you interacts. Make notes and take photographs. Create a PDF of these ALL these experiences; highlight your top 3 favorites.

      Design 1: Create a mock-up design for a fantasy device. Use wireframes to describe how this device looks and functions. This device can be simple or complex but should not be a simple add-on to an existing device. Think of the behaviors and capabilities that are needed. Create an image detailing the device and a short description. Submit it as a PDF.

###Week 3: February 10-

  • In Class: - Parts 101 Quiz - Present Exercise 1 & Fantasy Device - Workshop: Switches & DIY - Sketch and Design 3 different custom switches

  • For Homework:

    • Do:
      • Design 2: Create 2 custom functioning DIY switches
    • Read:
      • Arduino Cookbook - Read Ch 1, familiarize yourself with Ch 2

###Week 4: February 17

  • In Class:

    • Present Switches working in a simple circuit
    • Workshop: Breadboard, Programming Arduino, Digital & Analog Out
    • Stupid Pet Tricks brief announced
  • For Homework:

    • Read:

      • Arduino Cookbook - Ch 8, 5-6
    • Do:

      • Gather materials/devices/supplies for Stupid Pet Tricks I
      • Start hacking and assembling Stupid Pet Tricks I: Stage 1: make output happen
      • Acquire DC Power supply

###Week 5: February 24

  • In Class:

    • Workshop: Digital & Analog In: switches, sensors (FSR, Photocell, flex), pull up/down resistor Debounce
    • In-Class Challenge: Output and Input
    • Stupid Pet Tricks Studio time
  • For Homework:

    • Read:
      • Arduino Cookbook – Chapter 2
      • Physical Computing- Chapter 6
    • Do:
      • Complete Stupid Pet Tricks I

###Week 6: March 3

  • In Class:

    • Present Stupid Pet Tricks
    • Workshop: Controlling higher watt & AC devices – DC motors, relays, TIP’s, voltage regulators
    • In-Class Challenge: Controlling high output devices
  • For Homework:

    • Do:
      • Use a tip or relay as an interface controlling output (dc motor, fairy lights, ac fan, etc). Control it based upon some sort of arduino input through code. Modulate/choreograph the output based upon input.
    • Read:
      • Physical Computing - Chapter 8 - Techniques for Polite Conversation
      • Emotional Design

###Part 2: Networking and reliable interaction

###Week 7: March 10

###Spring Break – March 17th

###Week 8: March 24

  • In Class:
    • Workshop: Networking 1: Arduino to Processing and Max/MSP

      • In Class Challenge: Networking – Stupid Pet Tricks II
    • For Homework:

      • Read: TBA

      • Do: TBA

        • Begin researching your final project.

###Week 9: March 31st

  • In Class:
    • Workshop: Networking II: Arduino to Bluetooth, Twitter, etc

      • In Class Challenge: Networking – Stupid Pet Tricks II
    • For Homework:

      • Do:
        • Prepare for Final Project Roundtable – Create 3 sets of sketches (1 for each idea, with 2 references for each idea), including mapping for each system

###Part 3: Final Project

###Week 10: April 7th

  • In Class:

    • Roundtable for the Final
    • Workshop: Other devices & libraries: Kinect, small screens, buses & hub
  • For Homework:

    • Do:
      • Acquire parts for final project
      • Work on Alpha for final Project prototype

###Week 11: April 14th

  • In Class:

    • Workshop: Noisy Data - Cleaning up your input – Scaling, Smoothing, Averaging Arrays, Sorting Arrays
    • In Class Challenge: Sensor Taming – Scaling & Amplification
  • For Homework:

    • Work on Final Project – prepare Alpha version for next week For Homework: Work on Final Project

###Week 12: April 21

  • In Class:

    • Exercise 3: Working Prototype/Alpha for Final Project Due
    • Workshop & In Class Challenge – Sensor Taming - Noisy Sensors
    • Individual Meetings re: Final Project
  • For Homework:

    • UX Study and Feedback

###Week 13: May 5

  • In Class:
    • Workshop By Requests
    • Studio time

###Week 14: May 12 – Last Day of Class

  • In Class:

    • In-class trouble shooting
    • Studio time
  • For Homework: - Work on Final Project

###Week 15: May 19 – Final Presentations and Critique

Student Blogs

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors