# Schedule

For the readings, “Ch. 1, 2, 3, etc.” refers to Lauren McCarthy, Ben Fry, and Casey Reas, Getting Started with p5.js, which is available to students as a preprint. “JS Introduction”, “JS Scope”, etc. refer to topics in the w3schools.com JavaScript Tutorial.

Projects/Exams
1
8/31-
9/4
IDE, run code
Examples, code elements
Publishing
Browser (chrome) console, printing to console
Processing: ellipse, rect, color, coordinates, responding to button press
“First Word Art / Last Word Art” by Michael Naimark
Optional Reading: JS Introduction, JS Output, JS Syntax, JS Statements, JS Comments
Assignment: “Mondrian”, “Family Composition”
Looking Outwards:
Technological Art
Project: Face
Other: Complete Questionaire

 2 9/7- 9/11 Concepts: Variables, Arithmetic, Order of Operations Iteration (for loops) Processing: max, min, constrain, random, mouseX, mouseY, setup + draw (“continuous” 60fps) Reading: “Critical Engineering Manifesto” by Julian Oliver et al. (2011) Ch. 4 Optional Reading: JS Variables, JS Operators, JS Arithmetic, JS Assignment, JS Scope, JS Numbers, JS Number Methods, JS Math Assignment: draw a square at x, y; draw a triangle to the right; draw a circle below; draw an object at some location controlled by the mouse in a non-intuitive way, e.g. swap X and Y (but now that you’ve seen this suggestion, figure out a different non-intuitive control strategy of your own.); In a for loop, draw the 17th circle red; black otherwise. Looking Outwards: Processing Project: Make a new randomized face when button is pressed.

 3 9/14- 9/18 Concepts: Nested Iteration Arithmetic: mod (%) Functions – without parameters, with parameters Functions – return values Abstraction (Rees book p. 182) Scope (II) – function scope, parameters Iteration + Functions (multiple googly eyes) Boolean expressions Conditional iteration (while, do while) Processing: rotate, translate, map, radians, sin, cos; circle, spiral, n-gons from trig (sin(2), cos(t)) Reading: Ch. 9 Optional Reading: JS Functions, JS Dates, JS Date Formats, JS Booleans, JS Loop While, JS Break, JS Style Guide, JS Best Practices, JS Mistakes, JS Functions: Function Definitions, JS Functions: Function Parameters, JS Functions: Function Invocation, JS Functions: Function Closures Assignment: Hexagonal grid; Bouncing ball (warmup for Pong) Sandur Mulder “Continue Time” clock Color gradient – blend between 2 colors across 20 squares. Looking Outwards:Generativity Project: Abstract Clock

 4 9/21- 9/25 Concepts: Arrays (+ iteration) strings as values, concatenation, searching, matching types Processing: text, fonts Reading: Ch. 5 Optional Reading: JS Data Types, JS Strings, JS String Methods, JS Arrays LAB EXAM 9/22 Assignment: plot prescaled data; pie chart Looking Outwards: Information Visualization Project: Phyllotactic spiral

 5 9/28- 10/2 Concepts: FIFO, LIFO, search, trails, worms, strings as char sequences, debugging Processing: Reading: Ch. 8 Optional Reading: JS Array Methods, JS Type Conversion, JS Debugging Assignment: pong (wrapping, bouncing); find the max and min and normalize with map; find peaks in an array of noise (planting the flag) Looking Outwards: Project:

 7 10/12- 10/16 Concepts: Making objects, Randomness Processing: Reading: Ch. 6, 7 Optional Reading: JS JSON, JS Objects: Object Definitions, JS Objects: Object Properties, JS Objects: Object Methods, JS Objects: Object Prototypes Assignment: Looking Outwards: Project:

 8 10/19- 10/21 Concepts: Images Processing: Images Reading: Optional Reading: (No class 10/23) LAB EXAM 10/20 Assignment: Looking Outwards: Project:

 9 10/26- 10/30 Concepts: Processing: Reading: Optional Reading: Assignment: Looking Outwards: Project:

 10 11/2- 11/6 Concepts: Processing: Reading: Optional Reading: Assignment: Looking Outwards: Project:

 11 11/9- 11/13 Concepts: Processing: Reading: Optional Reading: Assignment: Looking Outwards: Project:

 12 11/16- 11/20 Concepts: Processing: Reading: Optional Reading: LAB EXAM 11/17 FINAL EXAM IN CLASS Assignment: Looking Outwards: Project:

 13 11/23- 11/24 Concepts: Processing: Reading: Optional Reading: Assignment: Looking Outwards: Project:

Thanksgiving Break 11/25-11/29

 14 11/30- 12/4 Concepts: Processing: Reading: Optional Reading: Assignment: Looking Outwards: Project:

 15 12/7- 12/11 Concepts: Processing: Reading: Optional Reading: EXHIBITION 12/11 Assignment: Looking Outwards: Project: