-
Notifications
You must be signed in to change notification settings - Fork 2
Homework John Henry
ICM Section 02 • Meeting Wednesday 6:40pm - 9:10pm ET in Room 410
- Contacting John Henry
- About Our Course
- Week 8 Images
- Week 9 Video
- Week 10 Sound Analysis
- Week 11 Sound Synthesis
- Week 12 Text Data
- Week 13 prototype presentation
Here is the description for ICM from the ITP Schedule.
-
ICM Section 2 Code Schedule and Homework Wiki (i.e. the first 7 weeks)
-
ICM Media syllabus (overview, grading and attendance policies, and statements)
Upon completion of the second half of the ICM course, Media, we will be able to:
- apply fundamental programming concepts to generate and manipulate media including images, video, sound, text, and data.
- experiment with media-specific, computational techniques and apply them to our creative work.
ICM Media is a seven-week course that meets once a week in person at the scheduled time. We will have assignments to do before each Media class, and these assignments will build towards a final project to share at the end of the seven weeks.
This course embraces an active-learning approach with the belief that programming is best understood by doing. In keeping with this approach, class time will be structured as a workshop and seminar instead of a lecture, relying heavily on group discussion and participation. Weekly video tutorials to watch before class sessions will introduce fundamental coding concepts. During class, supplemental code examples will be presented and discussed before hands-on work together. Time will also be allotted to share our weekly assignments.
Your are encouraged to reach out to me outside of class to ask questions, share ideas/feedback, and discuss topics in detail.
Before class, read / watch the tutorials that we will practice together when we meet.
There are also weekly programming assignments to practice the weekly topics. Unless otherwise stated, assignments are due on Tuesday at 11:59pm the day before our class so that I have a chance to review your questions before we meet.
All assignments are expected to be submitted by the stated deadline, and you should be prepared to show and talk about them in class. If you anticipate any challenges meeting the deadline, please reach out to me so that we can consider your options together.
A big part of learning at ITP is learning from each other. Share your work and in return you'll see everyone else's!
- Weekly Practice Questions. Unless otherwise stated, there are questions (linked below) to practice the topics introduced in this course. You are expected to add links to your p5 sketches directly to our weekly exercise documents.*
-
Weekly Creative Exercise and Blog Post.** Each week there is an open-ended, freestyle creative exercise to apply the concepts that we practice. You are expected to document your work online with a blog post and add links to your posts in our weekly exercise documents (linked below). Include a link to your p5 sketch in your blog post, and here are some guiding questions if you are not sure what to write about:
- What did you originally intend to create?
- Narrate the process of creating your sketch.
- What resources and examples did you draw on to create your sketch?
- What problems / discoveries did you encounter along the way?
- (Source of prompts: Nature of Code syllabus)
*Log in to your NYU account to access the documents.
**If you are struggling with your weekly exercise sketches, put your energy into writing about what didn't work and how you tried to solve it. It is totally okay to vent your frustrations. Writing a blog post helps to remember and synthesize what you did and tried to do. Think of it as writing a reference guide for your future self.
- p5 Resources
- p5 creative coding library: Reference | Web Editor
- Video tutorials
- Written tutorials
- Allison Parrish’s Creative Coding Notes
- Lauren Lee McCarthy's Getting Started with p5.js
- HappyCoding.io
- Digital Harbor's Creative Programming Course
- Coding for Designers Demystifying Code and Learning JavaScript
- Processing Foundation Discourse: A forum for asking / answering Processing and p5 questions
- If you find yourself struggling, there are many forms of support at ITP:
- Look out for the residents' office hours and help sessions.
- Visit The Coding Lab to ask ITP student mentors about your code.
- Here are some examples of how to ask code-related questions.
ICM Section 2 Code Schedule and Homework Wiki (i.e. the first 7 weeks) This was the last week for that session:
Resources:
Homework assignment due Tuesday, Oct 26, at 11:59pm:
-
Complete the Practice questions in this Week 7 Exercises document
-
Complete the Creative Exercise for the design you presented in class.
-
Submit links to post and sketches in this form.
- READ • Allison Parrish's Media: Images
- WATCH
- Coding Train Video on Uploading Media Files in the p5.js web editor
- Video 7.8 on adding images to objects
- Video 11.3 on the pixel array sketch
Resources:
Resources:
Homework assignment due Tuesday, Nov 2, at 11:59pm:
-
Complete the Practice questions in this Week 8 Exercises document
-
Submit links to post and sketches in this form.
- READ • Allison Parrish's Working with video
- WATCH
- OPTIONAL:
Resources:
Resources:
Homework assignment due Tuesday, Nov 9, at 11:59pm:
-
Complete the Practice questions in this Week 9 Exercises document
-
Submit links to post and sketches in this form.
- WATCH Coding Train Videos 17.1 - 17.5, 17.8 - 7.11 ~1hr 45min
Code for these examples are in the repo for the CodingTrain website.
I've also extraced the code into this smaller web site.
Resources:
Homework assignment due Tuesday, Nov 16, at 11:59pm:
-
Complete the Exercise in this Week 10 Exercise document
-
Submit links to post and sketches in this form.
-
INTERACT / READ / LISTEN
- Beats and Notes and Scales
- Synthesizing and analyzing sound by Allison Parrish
- Why repeating words sound like music to your brain ~4 min
- How Generative Music Works by Tero Parviainen (so many examples!) ~10 min
-
WATCH Coding Train Videos 17.6 and 17.7 ~26 min
Resources:
Examples and inspiration thanks to Ellen
-
p5 demos, Making notes:
-
yourSoundFile.rate()
, note ratios - p5.Oscillator, note frequencies
- p5.Oscillator, note ratios
-
-
p5 demos, Sound effects:
- p5.Envelope (ADSR)
- p5 effects
-
p5 demos, Timing and patterns:
- frameCount and Modulo
- p5.SoundLoop
-
p5 demos, Other examples:
- jazz.computer
- Plink by DinahMoe
- Writing Music in Light
- Music Eclipticalis by Brian Foo
- Listen to Wikipedia by Hatnote, Stephen LaPorte, and Mahmoud Hashemi
- Troupe-like in p5.js by Cassie Tarakajian based on Trope app by Brian Eno and Peter Chilvers
- Chrome Music Lab
- Symphonies of the Planets by Joohyun Park
- PoseNet-related
Homework assignment due Tuesday, Nov 23, at 11:59pm:
-
FINAL PROJECT • Prepare a proposal for your final project.
- Your final project is an open-ended creative project that builds off or is inspired by the concepts in this class. It is an opportunity to push your abilities to produce something that utilizes what you have learned. There is no requirement to use a particular aspect of programming. Focus on an idea that excites you, and choose the best programming concepts and tools to help you realize it.
- Read the Final Project Guidelines and Schedule for all the details, including how to prepare a proposal to share in class next week.
-
READ
-
Allison Parrish's tutorial
-
Review these syllabus examples and tutorials for
We'll cover a couple topics, but you might want to go further with the materials posted here.
-
Examples and inspiration thanks to Ellen
- Text
- Syllabus resources
- Tutorials:
- Allison Parrish's Text and Type
- Carrie Wang's Scrolling Text and Drawing the Text Array
- Code Examples
- Alllison Parrish's Interactive Type Examples
- Generative Design P.3. Type Examples (scroll down)
- Fonts:
- p5 demos:
- Possible inspiration:
- Data & APIs
- Syllabus resources
- Working with JSON
- JSON Formatter Chrome Extension
- Formatting and Validating JSON
- Tutorials:
- Coding Train Intro to Data and APIs (includes working with Wordnik, NYTimes, Giphy, and Wikipedia APIs)
- Data Sources:
- p5 demos:
- Possible inspiration
- The Library of Missing Datasets by Mimi Onuoha | We Need Us by Julie Freeman | Listen to Wikipedia by Stephen LaPorte and Mahmoud Hashemi | Dear Data by Giorgia Lupi and Stefanie Posavec | Sleep Drawings by Laurie Frick | Visual Essays by The Pudding | Parsons Students Design Data Visualizations with Met Open Access API (about) | 45 Ways to Communicate Two Quantities
Homework assignment due Wednesday, Dec 1:
- FINAL PROJECT • Create a working prototype of your final project to user test in our next class. Read the Final Project Guidelines and Schedule.
Homework assignment due Wednesday, Dec 8:
- FINAL PROJECT Presentation. Read the Final Project Guidelines and Schedule.