Main Time class page
ITPG-GT 2040 – 001 (23548) Wednesdays 12:10pm – 3:05pm (September 04 – December 11)
- Student documentation
- Notes on the syllabus
- Office Hours
- Deliverables
- Assignments
- Readings
- Syllabus
- Class 01, September 04 : The Gnomon
- Class 02, September 11: The Ecliptic
- Class 03, September 18: Cepheids
- Class 04, September 25: Time Dilation
- Class 05, October 02: The Copernican Principle
- Class 06, October 23: Time Machines
- Class 07, October 30: Existing in Time
- Class 08, November 06: From Data to Meaning
- Class 09, November 13: Final Concept Presentations
- Class 10, November 20: Time Protocols
- Class 11, December 04: Final workshop
- Class 12, December 11: Finals
- Class Policies
Student documentation
- Rashida Kamal
- Arnab Chakravarty
- Nick Chenhe Zhang
- James Hosken
- Bill Murphy
- Melissa Powers
- Lynne Yun
- Chun Song
Notes on the syllabus
The first portion of the syllabus, weeks 1-5, is about time as a concept. You have (or will be acquiring) a background in physical computing and computational media – it’s assumed that you have techniques to solve problems with, and the more interesting issue is what to apply them to. You’re invited to think deeply and creatively about time, setting the stage for later work.
Because of a natural break in the syllabus, we’ll have a two week pause between classes 5 and 6. At week 6, we’ll review the creative/thoughtful work you’ve done so far, and begin a series practical in-class workshops, covering specific technical time topics. We’ll see things like microcontroller interrupts, RTC hardware, programmatic timelines and animation curves. At this point you’ll be formulating ideas for finals, and the goal is to give you some advanced tools to apply to that work.
We’ll have two classes after the Thanksgiving recess: a workshop for final projects, and then the presentation of the projects themselves.
Office Hours
Office hours can be scheduled with this calendar. In general I will be at ITP on Wednesdays and Thursdays, with most office hours Thursday afternoons, for both this class and physical computing. I have found over the years that video chats often work equally well for meetings, so if an in-person time is not available, please feel free to reach out by email and we can set up a time to chat.
Deliverables
An overview of what’s due when. For more detail, see Assignments and Readings
- Weekly: respond to prompts and readings for the following class. When appropriate, post online documentation.
- Class 6 (October 23): present astronomical instrument and software clock assignments.
- Class 7,8, and 10: Complete technical exercises started in class workshops, reviewed in following class.
- Class 4, 7 and 9: Discuss Rovelli and Griffiths reading.
- Class 9 (November 13): Present final project concepts.
- Class 12 (December 11): Present final projects.
Assignments
For all assignments, including the final, students may work individually or in groups of two; for a group larger than two please discuss with me first.
Astronomical Instrument
Demo in class Week 06, October 23.
Finding patterns in the movement of stars, planets, the moon and sun, tides, seasons is an ancient art. People have been looking up with wonder at the sky probably for longer than humans have been humans, and this thread of contemplating time runs throughout history.
I ask for your interpretation of what it means to follow in this tradition. Build an astronomical instrument. This could be literal – the exercise of building a working sundial or astrolabe is nontrivial and educational. Or this could be figurative – work inspired by time in the celestial sphere. You may use digital technology but are not required to.
Six Software Sketches
Posted online and reviewed Week 06, October 23.
Clocks are cool! I could look at the design of clocks and watches forever. This assignment is to create six quick, interesting sketches for clocks you wish existed. Draw inspiration from time-keeping machines ranging from the Antikythera Mechanism to the Clock of the Long Now. I assume you will use programming (platform is up to you) but some other method (physical mock up, etc) may be an option as well – discuss with me. The Clock Club p5JS examples are a good starting point, or branch out on your own.
At least one sketch should involve a complication.
Final Project
Due in class week 12, December 11.
I believe constraints make for good work, but I also feel the first two projects (the instrument, the sketches) are reasonably constrained already by me. So for your final project, I ask you to create the constraints yourself, as long as the project is related to Time and demonstrates creative and technical excellence. I will check in with you throughout the semester (in and out of class) to discuss progress towards final projects. Elaborating on an earlier project – say, one of your sketches – is perfectly fine.
Documentation
Each assignment (the instrument, sketches, and final) should have documentation online posted when the project is due. What this is will depend in part on what you choose to create – it could be a video of the project working, and/or a write up of your process and thoughts on the work. Discuss with me if you have any questions.
Readings
For this course, we’ll be reading Carlo Rovelli’s small, beautiful book, The Order of Time. I also ask that you read two or more chapters from Jay Griffiths’ wide-ranging and thought-provoking work A Sideways Look At Time (also known as “Pip Pip” in the UK for some reason). Between the two we will cover, in short order, the history of scientific concepts of time from antiquity to the present, as well as a variety of cultural perspectives on time.
As the semester progresses, I may add links to specific smaller readings (articles, papers, etc) in the syllabus based on what comes up in class discussions.
Throughout the semester I am likely to use projected slides to illustrate points, guide discussions, and generally help me organize the material I want to cover in each class. These will rarely function as stand alone documentation; however, there may be instances where they can serve as useful references, in which case I will share them with the class. If anyone has difficulty seeing the material in class or accessing it when shared, please let me know so we can work out how best to get the material to you.
Syllabus
Class 01, September 04 : The Gnomon
- Introductions
- Why this class?
- What we’ll think about, what we’ll do.
- Who are you?
- Presentation: Gnomon
- In class: Find moving light (weather permitting?)
- Assignments:
- Astronomical Instrument
- Six Software Sketches
- For next class:
- Get reading material: Rovelli and Griffiths.
- Send me a link to class documentation site
- Identify an object in the (night) sky and tell the class about it next week
Class 02, September 11: The Ecliptic
- Review sky objects
- Presentation
- Ecliptic Plane (notes inspired by Asimov’s The Clock We Live On)
- Antikythera, astrolabe, armillary spheres
- For next class:
- Interpret timing data from Pioneer/Voyager probe. Hi-res photo, vector with notes.
- Prepare to discuss rough clock concepts and astronomical instrument ideas.
- Links: StarAtlas, Night Sky. London Science Museum’s astronomy collection.
- Notes from class
Class 03, September 18: Cepheids
- Review Voyager timing interpretations
- Discuss project ideas.
- Presentation
- We’re not the center – the size of the universe.
- Clocks in the sky, Leavitt’s Law
- For next class:
- Prepare to discuss Section I of Rovelli
- Notes from class
Class 04, September 25: Time Dilation
- Discuss Rovelli Section I
- Miscellaneous inspiration (links from notes)
- Quadrature, Earth Speed, CW&T, Powers of 10, Turrell, Automata, CotLN, orrery, Henson, Chaplin, Edgerton, Muybridge, slowmotion and timelapse.
- Presentation
- Galileo, Newton, Maxwell, and Einstein
- A tool for understanding space-time on Minute Physics.
- Annus Mirabilis
- For next class:
- Complete the curve (handout). Based on the population over time curve shown in class, extend it into the future as far as you like. What shape does it take? See William Poundstone’s summary of his book, The Doomsday Calculation, for reference.
- Post at least one software clock sketch, and progress on astronomical instrument. We will review in the next class.
- Notes from class
Class 05, October 02: The Copernican Principle
- Review assignment progress
- Che-Wei of CW&T, guest!!
- Copernican principle applied to time
- Doomsday Calculation
- Drake Equation
- Clock of the Long Now
- Some links:
- XKCD on the Doomsday Argument (Also, Time)
- Online Drake Equation Calculator
- Nick Bostrom’s papers
- PBS Deep Time video and spreadsheet
- For next class:
- Finish software sketches and astronomical instrument
- Get Griffiths text; decide which chapters to focus on and post.
October 09: Yom Kippur, no class
October 16: NYU Fall break, no class
Class 06, October 23: Time Machines
- Student presentations:
- Astronomical Instruments
- Software sketches
- Presentation: Time Machines (Hardware)
- Low-level microcontroller timing
- RTCs
- In-class
- Eliminating delay
- For next class:
- Complete microcontroller timing exercises (see below)
- Prepare to discuss Rovelli Sections II and III
Time Machine prompts: Start by looking at the “Blink without Delay” Arduino example, and understanding that. Can you generalize it to two or more blinking LEDs? Can you generalize these ideas to extend to any variable that changes over time? Can you find a library that helps abstract timing?
Now consider input: create a digital input handled by an interrupt as opposed to the “standard” way (polling) shown in Intro to PComp. Finally, if you have access to an real time clock (built into the Nano, or as an external board) or any other timing source (e.g., reading the output of an external quartz timing crystal) incorporate that into a simple sketch.
Class 07, October 30: Existing in Time
- Time news
- Smashed clocks, Buzzfeed noticed time, GPS uses 10 bits for the week!
- Rashida and Arnab’s clocks
Review timing exercisesDo Class 6 timing workshop in class- Discuss Rovelli Sections II and III
- Presentation: Existing in Time (Output)
- Easing functions, animation curves
- Generative timelines
- (Signal synthesis – next week)
- For next class:
- Implement or use easing and timeline functions.
- Email me with the chapters from the Griffiths’ reading you will be focusing on.
Existing in Time prompts: For the platform of your choice, find ways to gradually change variables over time, and to schedule code to run in the future. You can implement your own means, use one of the libraries mentioned below, or some other library. Report back next week with what you found.
Resources:
- Func – P5 library from the one and only R. Luke DuBois. Waveform generators and easing functions (no timeline).
- Greensock: JS, Timelines and Tweens, not sure best way to use with P5 but otherwise very complete.
- Ani – Java/Processing – Based on Greensock, timelines and tweens. Not currently updating but quite functional.
- Ramp & Tasker – Arduino. Schedule events via Tasker, animate variables with Ramp.
Class 08, November 06: From Data to Meaning
- Arnab and Lynne’s clocks
- Review timing exercises
- Existing in Time part 2
- Ramps and tasks in Arduino
- Example of timelines and easing in PNC Beacon project.
- Presentation: From Data to Meaning (Input)
- For next class:
- Prepare final concept presentations
- Prepare to discuss selected chapters from Griffiths
From Data to Meaning Prompts: As a first step, take a noisy, fast input from an analog sensor and experiment with ways of filtering it. Graph the original and filtered signals. As a second step, try to make decisions based on the appropriately filtered input. Can you detect local min/max trends while ignoring momentary noise? If appropriate to your platform, experiment with FFT and pitch detection as well.
Class 09, November 13: Final Concept Presentations
- Student presentations: Final concepts
- Discuss Griffiths reading
- Preview: Julian Date and Unix Epoch
- For next class:
- Calculate Julian Date and Unix Epoch of an important date to you.
Class 10, November 20: Time Protocols
- Review Julian/Unix results
- Presentation: Time Protocols
- Julian, Unix
- GPS
- Chrontab
- For next class:
- Develop finals
November 27: U.S. Thanksgiving, no class
Class 11, December 04: Final workshop
- Final group discussion
- Individual project meeting
- For next class:
- Finish final projects
Class 12, December 11: Finals
- Student final presentations
Note – pdf files are temporary, as I find a fast way to generate more accessible slides.
Class Policies
Note – these are adapted from the policies for Physical Computing.
Grading
The most important thing you can do is arrive to each class on time and be prepared to actively participate and engage with the material. Please put your best effort into assignments and readings, and keep a record of your work online. ITP is pass fail, but the equivalent of a B or higher is required to pass.
- 20% In-class work and participation, readings, discussions.
- 20% Astronomical Instrument
- 20% Software Sketches
- 30% Final project
- 10% Documentation
Participation & Attendance
Showing up on time, engaging in the class discussion, and offering advice and critique on other projects in the class is a major part of your grade. Please be present and prompt. Lateness will hurt your grade. If you’re going to be late or absent, please email your instructor in advance. If you have an emergency, please let your instructor know as soon as you can. Please turn in assignments on time as well.
Personal Device Use
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. Whenever classmates are presenting or we’re in the midst of a class discussion, however, please keep your laptop closed. The quality of the class depends in large part on the quality of your attention and active participation, so please respect that and close your lid.
Please put mobile devices (phones, tablets, etc.) on vibrate or turn them off before you come to class unless they are part of your project. If you have an emergency that requires you to answer your phone during class, please tell meahead of time.