Skip to content

Homework John Henry 02

John Henry Thompson edited this page Oct 19, 2022 · 17 revisions

ICM Section 02 • Meeting Wednesday 12:10PM - 2:40PM EST in Room 411

Contents

Contacting John Henry

Homework Form

Submit all assignments using our homework form

All assignments are due the night before class

Week 1 • Sept 7 • Introduction and Drawing in p5.js

In class:

  • Welcome! and introductions
  • Course overview
  • What is p5?
  • p5 web editor
  • p5 functions
  • Tips for learning to code
  • Syllabus / schedule
  • What can we do with creative coding?

Examples:

Assignment due the night before our next class:

  • DO - Create a p5 web editor account. - Have a place online to document your creative assignments. This could be a website/blog, Notion page, or even a Google document. If you’re not sure what to use, please reach out to me for help.

Week 2 • Sept 14 • Animation with Variables

In class:

  • Share our homework
  • Logging values to the Console
  • Introduction to variables
  • Animating shapes
  • p5's system variables

Review Example:

Video Examples:

Remix Examples:

Assignment due the night before our next class:

  • PRACTICE • Week 2 Worksheet

  • CREATE • Assignment #2 Create a sketch that includes (all of these):

    • One element controlled by the mouse.
    • One element that changes over time, independently of the mouse.
    • One element that is different every time you run the sketch.

    You can choose to build off of your week 1 design, but I might suggest starting over and working with one or two simple shapes in order to emphasize practicing with variables. See if you can eliminate all (or as much as you can) hard-coded numbers from the sketch.

  • WATCH, READ, RUN CODE:


Week 3 • Sept 21 • Interaction with Conditionals

Additional p5js Resources

Remix Examples:

Assignment due the night before our next class:

  • PRACTICE • Week 3 Worksheet

  • CREATE • Assignment #3 Make a rule-based animation that incorporates motion and interaction. You can use the ideas below or invent your own!

    • Try making a rollover, button, or slider from scratch that controls the visual design or behavior of other elements in the sketch.

    • And / or try working with keyboard events: keyIsPressed, key, keyCode, keyPressed(), keyReleased(), keyTyped(), and keyIsDown().

    • Be sure to cite the source of any material / code you use.

    • Submit on our homework form.

  • WATCH, READ, RUN CODE:


Week 4 • Sept 28 • Repetition with Loops

In class:

  • Review worksheet
  • Share our homework
  • Review conditional statements
  • Introduction to loops
  • Preview of functions

Resources :

Examples :

Assignment due the night before our next class:

  • PRACTICE • Week 4 Worksheet
  • CREATE • PATTERNS
    • We humans have a tendency to look for patterns everywhere. We see patterns in nature and on the urban streets of New York. We rely on patterns we’ve detected in life to make predictions and acquire knowledge.
    • Observe, both outside (your surroundings) and inside (your history of thoughts and feelings), make a sketch about a specific pattern you find.
    • Think about how you can tell the unique story of the pattern using code.
    • Submit on our homework form.
  • WATCH

Week 5 • Oct 5 • Organization with Functions

In class:

  • For-loop review
  • Introduction to arrays
  • Defining and Using Functions

Examples:

Assignment due the night before our next class:

  • PRACTICE • Week 5 Worksheet

  • CREATE • Functions

    • Part 1: Functions are the basic unit of labor in your code. Take a sketch you’ve already done and re-organize the code into functional units of labor that you define. You can also conceive of an entirely new world of labor. What kinds of labor does it take to make your sketch run? Add comments and use well named functions and variables to help explain your code.

    • Part 2: Make your sketch canvas size independent. We should be able to adjust the canvas size with reasonable values.

    • Part 3: Pair up with someone to review your code. The reviewer should try to describe how your code works.

    • Submit on our homework form.

  • WATCH • Coding Train Videos 6.2-6.3 and 7.3-7.7 about writing classes to create many objects, mouse interacting with those objects, and objects communicating with each other ~1hr 40min

  • Objects and Arrays - Remix


Week 6 • Oct 12 • More Repetition with Classes

In class:

  • Object-Oriented Programming with Classes

Examples

Assignment due the night before our next class:

  • PRACTICE • Week 6 Worksheet

  • CREATE • Arrays and objects allow you to do something new with your programs: keep track of user action over the course of your sketch's execution. Create a sketch that takes advantage of your new skills. The sketch should allow the user to use clicks, key presses, etc. to add new elements to the scene (and potentially to remove them later). Your sketch should use an array of objects.

    • You will have two weeks to work on this creative assignment. For next week prepare a plan for what you hope to accomplish and be prepared to show work in progress.

    • Submit on our homework form.

  • WATCH • Coding Train Videos 8.1-8.10(~2 hours)

    • Focus on the basics, videos 8.1 - 8.4 (~40 minute)

--

Week 7 • Oct 19 • The DOM

In class:

Examples

Assignment due the night before our next class:

Clone this wiki locally