Homework 05

Due: 2024/10/14 - 5PM

Programming (10 points)

Intro:

This assignment is an opportunity to practice with mouse interactions and time-based designs.


Getting Started and Submitting:

For all of the exercises you’ll start by cloning our template and setting up our GitHub app to pull (download) our repo and then push (upload) the results.

You’ll be turning in 2 links for your sketches, so name your repositories HW05A and HW05B.

Alternatively!, you can start by cloning our multi-sketch template into a single repository called HW05.

Since the computer is gonna be doing all the work of filling our screen, please use: createCanvas(windowWidth, windowHeight).

Like previous assignments, please enable GitHub pages on your GitHub repos and use Brightspace to submit GitHub links to all of your HW05 repositories.


Evaluation

Each exercise in this assignment will be graded on a scale from 0 to 5, taking the following criteria into account:

  • README: repository includes a README.md file with information about the design process.
  • Compliance: work follows the requirements specified in the assignment description.
  • Implementation: work shows evidence of understanding programming concepts and you are fully using them to express your ideas.
  • Thoughtfulness: project demonstrates your personality and it’s not a straightforward re-implementation of someone else’s idea.
  • Craft: code and results show care and consideration for presentation and professionalism, and work doesn’t look like it was rushed.

HW05A

Keeping Track of Time (5 points)

For this exercise we are going to create a clock.

More precisely, we’ll create a mechanism that keeps track of time. It can be a standard hour/minute/second analog clock, or a more abstract interpretation of a clock. It can keep track of time in 24-hour intervals, or a longer period of time, like a year/month/week clock (calendar).

The requirements are that it should keep track of at least 3 sub-divisions of time. If we implement a 24-hour clock it should have minutes and seconds (or some other sub-divisions of the 24-hour period). If we implement a year-long clock (calendar), it should have some sub-divisions like months and days, or seasons and weeks. We can implement a 80,000-hour clock, or a 10,000-year clock as long as we have at least 3 sub-divisions. For full credit, specify what you chose to implement in the README.md file.

This time component can be relative, and create changes based on how long the sketch has been running, or absolute, where the sketch behaves differently at different moments in the day/month/year/decade.

In class we saw how to use millis() to create time-based changes, but there are other functions in p5.js for working with time.

Some references, but for full “Thoughtfulness” points your clock should be different from these:

HW05B

Grapefruit

We read about about Fluxus, scores and Yoko Ono last week.

Pick one of the instructions from Yoko Ono’s GRAPEFRUIT: A Book of Instructions and Drawings to recreate with code. Feel free to interpret and reinterpret the instructions. Don’t be limited by their literal meaning: fish doesn’t have to mean a fish.

Your interpretation can be interactive, or time-based, but it has to change either with mouse input, or as time passes.

As above, the time component of your sketch can be relative, and create changes based on how long the sketch has been running, or absolute, where the sketch behaves differently at different moments in the day/month/year/decade. Depending on the painting you choose, and how its interpreted, both kinds of changes can be used to create very different effects in your drawing.

Read & Respond (5 points)

What is interaction?

Keep this question in mind while you read this week’s texts and write your 200-word response to:

1. The Art of Interactive Design by Chris Crawford
Chapter 1 (pdf pages 3 - 12)
2. The Media Art Pose by Golan Levin
Optional Readings:
1. What is Interaction? by Hugh Dubberly, Paul Pangaro and Usman Haque
2. What is Conversation? by Hugh Dubberly and Paul Pangaro

As always, your response should be personal, meaning that you should be expressing your views and opinions about the text and not just summarizing it. You can use the following rubric to guide your response:

  • Short summary: in one or two phrases, what are the texts about?
  • Did you learn something new? What?
  • What do you agree or disagree with? Why?
  • How is this text related to programming?
  • If you were to continue reading the book which chapter do you think would resonate the strongest with you?
  • How do these texts relate to each other? What would Chris Crawford say about “The Media Art Pose”?

Please submit your response via Brightspace.

Grading for the readings will be assigned following these considerations:

Response Grade
Only summarized the reading 2 points
Answered some of the prompts, but I can’t tell whether
you actually read the text, or what you thought
3 points
Answered enough prompts to express opinions 5 points