Class Calendar
Unit 1: Introduction to Programming in Javascript and p5
Week 1, September 4
- course overview
- knowledge spectrum
- intro to creative computing
- what you can do with creative computing
- programming intro
- computers are stupid ignorant jerks
- what a program is
- learning to program
- progamming skils overview
- tools intro
- chrome
- console
- atom
- git
- github
- javascript/p5 intro
- what javscript is
- what p5 is
- reference documentation
- intro to javascript syntax
- intro to p5 drawing api
noloop()
console.log()
- comments
Assignment: Basic Drawing
Explore the p5 library and create a drawing with code.
Week 2, September 11
- homework review
- programming is powerful
- javascript
- literals
- variables
- expressions
- statements
- flow control
- p5
- tools
- livereload
- syntax linting
Assignment: Variable Drawing
Use javascript to create a drawing that changes itself.
Week 3, September 18
- selected homework code review
- coding style
- working to spec
- using a code formatter
- debugging
- debugging as a primary skill
- getting unstuck
console.log()
- divide and conquer
- chrome debugger
- p5
- interactivity and animation
Assignment: Coding Challenges
Week 4, September 25
- selected homework code review
- javascript
- arrays
- functions
- objects (data)
- modular design
Assignment: Coding Challenges
Week 5, October 2
- selected homework code review
- working with images in p5
Assignment: Coding Challenges
Unit 2: Creative Computing Projects
Week 6, October 9
- javascript/p5 basics test
- what interaction is
- interaction charades
- interaction storyboards
Assignment: Interaction Charades Story Boarding
Communicate an abstract concept through pure interaction.
Week 7, October 16
- planning larger programs
- program design
- problem definition/break down
- program planning
- algorithms
- data structures
Assignment: Interaction Charades Implementation
Code an abstract interactive experience.
Week 8, October 23
- interaction charades critique
- interaction in narrative
- narrative structure
Assignment: Children's Book Interactive Illustration
Combine text, image, and interaction to create a moment in a larger narrative.
Week 9, October 30
- children’s book critique
- collaborative programming
- an exquisite corpse
Assignment: Crowd Source Project
Contribute a piece to a project built by the entire class.
Week 10, November 6
- crowd source review
- networked projects
- the world wide web
- what a web page is
- what a web browser is
- what a server is
- what a dns server is
- how it all works
- html/css/javascript
- exploring a webpage with chrome
- p5 networking api
Assignment: Network Assignment
Create a project that retrieves and displays information in real time.
Unit 3 - Advanced Topics and Final Project
Week 11, November 13
- advanced topics
- object oriented programming in javascript
- other programming interfaces
- physical human computer interfaces
Assignment: Final Project Brainstorming
Week 12, November 20
- creating proposals
- writing user scenarios
Assignment: Final Project Proposal
No Class, November 27, Thanksgiving Break
Week 13, December 4
- creating proofs of concept
- user testing
Assignment: Final Project POC
Week 14, December 11
- in-class work
- final project wip critique
Assignment: Final Project WIP
Week 15, December 18
Assignment: Final Project