Below is the current calendar for the CSE142 class. Please keep in mind that Stuart is constantly updating this. It should accurately describe the past, but it won't always accurately predict the future. Although Stuart doesn't use lecture slides, there are links to slides that have been used by our textbook's coauthor, Marty Stepp. These might prove useful for students who either miss lecture or want an extra opportunity to review the material.

Monday Wednesday Friday
 
9/30
administrative details
simple programs with println

Read: 1.1-1.3
Lecture: panopto video
Slides: pdf, ppt
Video: methods
Program: Hello.java
Program: DrawBoxes.java
Program: DrawBoxes2.java
Link: Hello World auction
10/2
static methods
primitive types, expressions

Read: 1.4-1.5, 2.1
Lecture: panopto video
Slides: pdf, ppt
Video: complex figure
Video: expressions
Program: Figure1.java
Program: Figure2.java
Program: Figure3.java
10/5
variables, assignment
for loops


Read: 2.2-2.3
Lecture: panopto video
Slides: pdf, ppt
Video: variables/assignment
Video: for loop
Video: nested loops
Program: OverallScore.java
10/7
print vs println
nested for loops
class constants

Read: 2.4-2.5
Lecture: no panopto video
Slides: pdf, ppt
Video: complex figure
Program: Mirror.java
Program: Mirror2.java
10/9
parameters



Read: 3.1
Lecture: panopto video
Slides: pdf, ppt
Video: parameter mystery
Program: Stars1.java
Program: Stars2.java
Program: SayHello.java
Program: ParameterMystery.java
10/12
graphics

Read: Supplement 3G
Lecture: panopto video
Slides: pdf, ppt
Video: basic drawing
Program: DrawingPanel.java
Program: Car1.java
Program: Car2.java
Program: Car3.java
10/14
more graphics

Read: Supplement 3G
Lecture: panopto video
Video: parameterized drawing
Program: Car4.java
Program: Draw1.java
Program: Draw2.java
Program: Draw3.java
10/16
return, Math class

Read: 3.2
Lecture: panopto video
Slides: pdf, ppt
Video: parameters & return values
Program: Days.java
Program: Ball1.java
10/19
Scanner/interactive programs
if/else

Read: 3.3-3.4, 4.1-4.2
Lecture: panopto video
Slides: pdf, ppt
Video: Scanner
Program: FindSum.java
Program: Ball2.java
10/21
more if/else


Read: 4.4-4.5
Lecture: panopto video
Slides: pdf, ppt
Video: nested if/else
Video: factoring if/else
Program: BadIfReturn.java
Program: GoodIfReturn.java
Program: BMI1.java
Program: BMI2.java
10/23
String and char


Read: 3.3, 4.3
Lecture: panopto video
Slides: pdf, ppt
Video: strings
Program: BadBMI.java
Program: SayCheese.java
Program: CreditCard.java
Link: Robin Dunbar on Shakespeare
Link: Smarties test from The Curious Incident of the Dog in the Night-Time
10/26
while loops
fencepost/sentinel loops

Read: 5.1-5.2
Lecture: panopto video
Slides: pdf, ppt
Video: sentinel loops
Program: Days2.java
Link: zune bug
10/28
pseudorandom numbers


Read: 5.1
Lecture: panopto video
Slides: pdf, ppt
Video: random numbers
Program: GuessEven.java
Program: Roulette.java
10/30
assertions


Read: 5.5
Lecture: panopto video
Slides: pdf, ppt
Video: assertions
11/2
type boolean
more while loop examples
midterm review

Read: 5.3
Lecture: panopto video
Slides: pdf, ppt
Video: type boolean
Problems: Methods.java
Program: Days3.java
11/4
file input



Read: 6.1-6.2, 5.4
Lecture: panopto video
Slides: pdf, ppt
Video: token-based processing
Program: Echo.java
Program: Echo2.java
Program: EchoWebPage.java
11/6
optional midterm review
actual midterm at 5:30 pm


11/9
line-based processing

Read: 6.3-6.5
Lecture: panopto video
Slides: pdf, ppt
Video: line-based processing
Video: complex input
Program: Movies.java (imdb.txt)
11/11
Veteran's Day Holiday

11/13
arrays

Read: 7.1
Lecture: panopto video
Slides: pdf, ppt
Program: Weather.java
Program: Histogram.java (midterm.txt)
11/16
more arrays


Read: 7.2
Lecture: panopto video
Slides: pdf, ppt
Video: array mystery
Video: array traversal
Program: ArraySample1.java
Program: ShowArgs.java
11/18
even more arrays
output files

Read: 7.4, 7.6
Lecture: panopto video
Slides: pdf, ppt
Video: array tallying
Program: ArraySample2.java
Program: Section.java (section.txt)
11/20
objects and classes
instance methods

Read: 7.3, 8.1-8.2
Lecture: panopto video
Slides: pdf, ppt
Video: Defining a class
Program: PointClient1.java, Point.java
Program: PointClient2.java, Point.java
11/23
toString, constructors
encapsulation

Read: 8.3-8.5
Lecture: panopto video
Slides: pdf, ppt
Slides: pdf, ppt
Video: constructors
Video: encapsulation
Program: PointClient3.java, Point.java
11/25
Java 8 (optional)


Lecture: panopto video
Program: Examples.java (uses data file moby.txt)
Link: related talk (especially starting at 23:45)
Link: suggested book
11/27
Thanksgiving Holiday

11/30
critters

Lecture: panopto video
Resources: ass9.zip
12/2
ArrayList

Read: 10.1
Lecture: panopto video
Slides: pdf, ppt
Video: ArrayList example
Video: ArrayList example
Program: ArrayListSample.java
12/4
inheritance

Read: 9.1, 9.3
Lecture: panopto video
Slides: pdf, ppt
Video: inheritance (first example)
12/7
Hour of Code activity
(optional)

12/9
more on arrays
review for final

Lecture: panopto video
Video: array shifting
Program: ArraySample3.java
12/11
critter tournament

Final Exam -- Tuesday, December 15, 12:30pm