CPSC 120 Principles of Computer Science Fall 2015

CPSC 120 Syllabus

Reading is to be done for the class period where it is listed.

 Assignments

Week 1: 8/31-9/4

Topics: introduction; drawing pictures with Processing

   

Mon Slides: lab 0
laptop setup
due Mon 9/7
 

Wed Reading:
  • Learning Processing, introduction sections "Take It One Step at a Time" and "Algorithms" (pages xv-xvii)
  • Learning Processing, chapter 1
Examples:
 

Fri Reading:
  • Learning Processing, sections 2.1-2.9
lab 1
Introduction to Linux and Processing
due Fri 9/11
 

Week 2: 9/7-9/11

Topics: interaction and animation

 

Mon Reading:
  • Learning Processing, chapter 3
Examples:
 

Wed Reading:
  • Learning Processing, sections 4.1-4.4
Examples:
 

Fri lab 2
Active Mode
due Fri 9/18
 

Week 3: 9/14-9/18

Topics: animation and representation, abstraction and modularity

 

Mon Reading:
  • Learning Processing, sections 4.5-4.7
Examples:

Wed Reading:
  • Learning Processing, sections 7.1-7.6
Slides and Examples:

Fri lab 3
Animation and Representation, Modularity and Abstraction
due Fri 9/25
 

Week 4: 9/21-9/25

Topics: making choices (conditionals)

 

Mon Reading:
  • Learning Processing, sections 5.1-5.5
Examples:
 

Wed Reading:
  • Learning Processing, sections 5.6-5.7 (contrast "bouncing" with "following edge" examples in section 5.7)
Examples:
 

Fri lab 4
Making Choices
due Fri 10/2
 

Week 5: 9/28-10/2

Topics: physically-based motion simulation

 

Mon Reading:
  • Learning Processing, sections 5.7-5.8
Slides and Examples:
 

Wed
exam 1
Wed 9/30 in class
 

Fri lab 5
Physics
due Fri 10/9
 

Week 6: 10/5-10/9

Topics: constrained and random motion, fancier drawing (transformations)

 

Mon Reading:
  • Learning Processing, sections 13.6-13.9 (this is more mathematical and some of the examples use Processing constructs like classes that we won't cover in this course - focus on the idea that you can get more complex motion by deriving x and y coordinates from some other quantity that varies, and don't worry about the details if the math is unfamiliar)
Slides and Examples:
 

Wed Reading:
  • Learning Processing, sections 14.5 and 14.7-14.8
Examples:
 

Fri lab 6
Complex Motion and Transformations
due Fri 10/16
 

Week 7: 10/12-10/16

Topics: repetition (loops)

 

Mon fall break
(no class)

Wed Reading:
  • Learning Processing, sections 6.1-6.4
Examples:
project 1
Rube Goldberg Sketch
due Mon 11/2 11:59pm

Fri Slides: lab 7
Repetition
due Fri 10/23

Week 8: 10/19-10/23

Topics: repetition (loops)


Mon Reading:
  • Learning Processing, sections 6.5-6.7
Examples:

Wed Examples: loop patterns

Fri lab 8
More Repetition
due Fri 10/30

Week 9: 10/26-10/30

Topics: more of the same (arrays)


Mon Reading:
  • Learning Processing, sections 9.1-9.5
Examples: loops and animation

Wed Slides and Examples:

Fri Slides: lab 9
Arrays
due Fri 11/6

Week 10: 11/2-11/6

Topics: more of the same (arrays)


Mon Reading:
  • Learning Processing, section 9.6
Slides and Examples:

Wed exam 1 redo due

exam 2
Wed 11/4 in class
 

Fri lab 10
Modeling Nature
due Fri 11/13
 

Week 11: 11/9-11/13

Topics: behavioral animation

 

Mon Slides and Examples:  

Wed Slides and Examples:  

Fri lab 11
Boids
due Fri 11/20
 

Week 12: 11/16-11/20

Topics: self-similarity and fractals

 

Mon Reading:
  • Learning Processing, section 13.10
Slides and Examples:
 

Wed Slides and Examples:  

Fri lab 12
Fractal Nature
due Fri 12/4
 

Week 13: 11/23-11/27

Topics: applications

 

Mon Slides:  

Wed Thanksgiving break
(no class)

Fri

Week 14: 11/30-12/4

Topics: images

 

Mon Reading:
  • Learning Processing, sections 15.1, 15.5-15.8
Examples:
project 2
Capstone
due Tue 12/15 1:30pm

Wed Reading:
  • Learning Processing, section 15.10
Examples:

Fri lab 13
Images
due Fri 12/11

Week 15: 12/7-12/11

Topics: images - fancier filters, generating images; wrapup - principles of computer science


Mon Slides and Examples:

Wed Slides:

Fri  

Reading Period: 12/12-12/14

 

Sat  

Sun  

Mon Slides and Examples:  

Exams: 12/15-12/18

 

Tue exam 2 redo due

final exam
Tue 12/15 1:30-4:30pm
end-of-semester deadline
no work accepted after 12/15 4:30pm

Wed    

Thu    

Fri    

Valid HTML 4.01!