CPSC 120 Principles of Computer Science Spring 2015

CPSC 120 Syllabus

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

Dates for things in light gray are tentative and may shift slightly.

 Assignments

Week 1: 1/20-1/23

Topics: introduction

   

Wed Slides: lab 0
due Mon 1/26
 

Fri Reading:
  • Learning Processing, sections 2.1-2.9

Don't worry about the meaning of the Processing functions mentioned in this chapter; we'll get to those next week. Instead, pay attention to how to use the Processing environment - where to type in your program, how to run it, and what happens when there are errors.

lab 1
due Fri 1/30
 

Week 2: 1/26-1/30

Topics: creating interactive pictures with Processing

 

Mon Reading:
  • Learning Processing, chapter 1

How to read this material: Don't worry about memorizing every detail of syntax the first time you read it. Instead, focus on what information is there (e.g. chapter 1 covers coordinates, colors, and drawing simple shapes) so that you can look up the details later. Pay attention to the examples, and make sure you understand why they produce the results they do.

Examples:

 

Wed Reading:
  • Learning Processing, chapter 3

Examples:

 

Fri lab 2
due Fri 2/6
 

Week 3: 2/2-2/6

Topics: animation and representation

 

Mon Reading:
  • Learning Processing, sections 4.1-4.5

Slides and Examples:

 

Wed Reading:
  • Learning Processing, sections 4.6-4.7

Examples:

 

Fri lab 3
due Fri 2/13
 

Week 4: 2/9-2/13

Topics: making choices

 

Mon Reading:
  • Learning Processing, sections 5.1-5.5

Examples:

 

Wed Reading:
  • Learning Processing, sections 5.6-5.8

Examples:

 

Fri lab 4
due Fri 2/20
 

Week 5: 2/16-2/20

Topics: more complex animation

 

Mon Reading:
  • Learning Processing, sections 5.7-5.8 (review from last week)

Examples:

 

Wed Slides and Examples: project 1
due Wed 3/4

Fri Slides: lab 5
due Fri 2/27

Week 6: 2/23-2/27

Topics: modularity and reuse, recursion


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

Wed Reading:
  • Learning Processing, section 13.10
    (focus on what it has to say about recursion; try to ignore the mentions of loops and iteration if that doesn't make sense, and the unfamiliar syntax in some of the examples)

Slides and Examples:


Fri lab 6
due Fri 3/6

Week 7: 3/2-3/6

Topics: modeling the natural world


Mon Reading:
  • Learning Processing, sections 14.1, 14.5, 14.7-14.8
    (focus on what it has to say about 2D; also, some of the examples use syntax that we haven't covered yet - just try to concentrate on how translate(), rotate(), pushMatrix(), and popMatrix() are used)

Examples:


Wed
midterm 1
Wed 3/4 in class
 

Fri Reading:
  • Learning Processing, section 13.6
lab 7
due Fri 3/13
 

Week 8: 3/9-3/13

Topics: repetition (loops)

 

Mon Reading:
  • Learning Processing, sections 6.1-6.4

Slides and Examples:

 

Wed Examples:  

Fri lab 8
due Fri 3/27
 

Spring Break: 3/16-3/20

 

Week 9: 3/23-3/27

Topics: repetition, again

 

Mon Slides and Examples:  

Wed Examples: project 2
due Wed 4/8

Fri lab 9
due Fri 4/3

Week 10: 3/30-4/3

Topics: more of the same (arrays)


Mon Reading:
  • Learning Processing, sections 9.1-9.5

Examples:


Wed exam 1 redo option due

Examples:


Fri lab 10
due Fri 4/10

Week 11: 4/6-4/10

Topics: more of the same (arrays)


Mon Reading:
  • Learning Processing, section 9.6

Examples:


Wed
midterm 2
Wed 4/8 in class
 

Fri lab 11
due Fri 4/17
 

Week 12: 4/13-4/17

Topics: behavioral animation

 

Mon Slides and Examples:  

Wed Slides and Examples:  

Fri lab 12
due Fri 4/24
 

Week 13: 4/20-4/24

Topics: images

 

Mon Reading:
  • Learning Processing, sections 15.1, 15.5-15.8
Examples:
 

Wed Reading:
  • Learning Processing, section 15.10

Slides and Examples:

 

Fri lab 13
due Fri 5/1
project 3
due Tue 5/12 10pm

Week 14: 4/27-5/1

Topics: principles of computer science; what computing can (and can't) do


Mon Slides:

Examples:


Wed Slides:

Examples:


Fri exam 2 redo option due  

Week 15: 5/4-5/5

Topics: ; what computing can (and can't) do

 

Mon Slides:  

Reading Period: 5/6-5/8

 

Wed  

Thu  

Fri  

Exams: 5/9-5/12

 

Sat  

Sun  

Mon  

Tue
final exam
Tue 5/12 7-10pm
end-of-semester deadline
no work accepted after 5/12 10pm

Valid HTML 4.01!