Creative Coding

Instructor: Tega Brain
Tuesdays & Thursdays 10:00 to 11:45
IDM creative coding Slack
Link to the p5 editor.

Syllabus

The official syllabus can be found here.

Class Schedule

WEEK 0: Thu Jan 28: Syllabus overview // Class tools and technologies

  • Introductions

For next class:

WEEK 1: Tue Feb 2: Syntax and languages // Editors and console // Coding practice

  • Coding from life

For next class:

  • Finish and submit coding from life assignment

Thu Feb 4: Parameters

  • Due: Coding from Life // Open Mic
  • Lost and found assignment (see description below)

For next class:

WEEK 2: Tue Feb 9: Generativity

  • Due: Lost and Found (see project description below) // Open mic session
  • Introduction to map, random.
  • Variables exercises

For next class:

Thu Feb 11: Conditionals

  • Lecture: Introduction to generative design
  • Generative design assignment

For next class:

  • Do the conditional testing homework exercise at the bottom of the notes for this week.
  • Read: Reading 1 from the Generative Design Project. Randomness by Nick Montfort (p119-146). (See NYU Classes for a PDF)
  • View: Else, else if
  • View: Boolean variables

WEEK 3: Tue Feb 16: Programming state

  • Live coding: generative code examples
  • Functions, lerp and while loops

For next class:

Thu Feb 18: NO CLASS

WEEK 4: Tues 23rd: Loops and Media

  • Return functions
  • Variable types, strings, print and console.log
  • Check in on generative assignment work

For next class:

  • Read: Guide to DeBugging
  • Finish your project

Thu Feb 25

  • For Loops // Images and Media
  • Due: Generative design // Open Mic

For next class:

WEEK 5: Tue Mar 2: Time and Technology

  • Lecture in class and introduction to the clock project. See notes here.
  • The time functions

For next class:

Thu Mar 4:Object Orientated Programming

  • Objects, objects, objects!

For next class:

WEEK 6: Tue Mar 9: Arrays & External editors and the console

  • Arrays!
  • More exercises with objects and arrays

For next class:

  • Review arrays and exercises from class
  • Clock project work

Thu Mar 11: External editors

For next class:

  • Clock project work

WEEK 7: Tue Mar 16: Arrays and The Clock

  • Arrays examples
  • Clock project work

Thu Mar 18:

For next Thursday:

WEEK 8: Tue Mar 23: Introduction to the terminal, github and the pixel array.

Intro to terminal & folder poetry. See the class notes and lectures slide on classes.

For next class:

Thu Mar 25: Images & image analysis

For next class:

WEEK 9: Tue Mar 30: Introduction to Libraries and Machine Learning

  • What is machine learning?
  • Project 4: Interaction with Teachable Machine

For next class:

Thu Apr 1: More examples with Teachable Machine

For next class:

WEEK 10: Tue Apr 6: Office Hours

Thu Apr 8:Advanced topics #1

  • Introduction to web and the DOM

Project Show and Tell

For next class:

WEEK 11: Tue Apr 13: Advanced topics #2

  • Introduction to data and APIs
  • Final Project introduction

Thu Apr 15: Advanced topics #3

  • Introduction to the sound library.

WEEK 12: Tue Apr 20: Final Project Proposals

  • Proposal crit session #1

Thu Apr 15

  • Proposal crit session #2

WEEK 13: Final Project Work

Monday 26th 5-7pm EST - #OSSTA Lecture Series at Studio for Creative Inquiry.

Tue April 27: No class (we will attend the Monday night of the lecture series in place of class. If you can't make Monday night, you are to attend another night of this series.)

For next class:

  • Give a review and reflection of two of the speaker's talks in the lecture series. Describe their practice. What are the key questions or concerns of their practice? Take a look at their portfolio and reflect on their artistic research
  • Final project work

Thu Apr 29: Final Project work session

WEEK 14. Finals

Tues May 4: Final project work session

Thu May 6: Final project presentations

Assignments

0: Hello World // Coding from Life

Art made from life is about learning to see in new ways. Code, like drawing can be a process of paying attention to these ways of seeing. Code a scene from life.

1: Lost and Found Assignment (5%)

Interview one of your classmates about an object that they lost and recreate this object in code. See the project sheet here.

2: Generative Thing (10%)

Take either the object you produced in assignment 1 or represent something new such as a face, a postage stamp, a teapot etc. and use code to create a generator for this thing. Produce at least 9 different things with your generator and present them as a grid.

See the project sheet here.

3: The Clock (15%)

Create a non conventional representation of the time. Project sheet is here

4: Classify This! (10%)

Exploring interaction with machine learning. Project sheet is here

5: Final (20%)

Final project brief.

Resources

p5.js

HTML/CSS

Readings

* All readings can be downloaded from NYU classes

Getting Setup

  • Running a local server.