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
1/7
administrative details
simple programs with println

Read: 1.1-1.3
Lecture: panopto video
Slides: pdf, ppt
Program: Hello.java
1/9
static methods


Read: 1.4-1.5
Lecture: panopto video
Slides: pdf, ppt
Video: methods
Video: complex figure
Program: Figure1.java
Program: Figure2.java
Program: Figure3.java
1/11
primitive types, expressions,
variables, assignment

Read: 2.1-2.2
Lecture: panopto video
Slides: pdf, ppt
Video: expressions
Video: variables/assignment
Program: OverallScore.java
1/14
print vs println
for loops

Read: 2.3
Lecture: panopto video
Slides: pdf, ppt
Video: for loop
Video: nested loops
Program: ForLoopExamples.java
1/16
nested for loops
class constants

Read: 2.4-2.5
Lecture: panopto video
Slides: pdf, ppt
Video: complex figure
Program: Mirror.java
Program: Mirror2.java
1/18
parameters
graphics


Read: 3.1, 3G
Lecture: panopto video
Slides: pdf, ppt
Slides: pdf, ppt
Video: parameter mystery
Video: basic drawing
Program: Stars1.java
Program: Stars2.java
Program: DrawingPanel.java
Program: Car1.java
Program: Car2.java
Program: Car3.java
1/21
Martin Luther King holiday

1/23
more graphics

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

Read: 3.2
Lecture: panopto video
Slides: pdf, ppt
Video: parameters & return values
Diagram: information flow
Program: Days.java
Program: Ball1.java
Link: Boeing integer overflow bug
1/28
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
1/30
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
2/1
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
2/4
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
2/6
pseudorandom numbers


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


Read: 5.5
Lecture: panopto video
Slides: pdf, ppt
Video: assertions
Handout: assertion problems
2/11
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
2/13
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
2/15
optional midterm review
actual midterm at 5:00 pm


2/18
Presidents Day Holiday

2/20
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)
2/22
arrays

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


Read: 7.2
Lecture: panopto video
Slides: pdf, ppt
Video: array mystery
Video: array traversal
Program: ArraySample1.java
2/27
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)
Program: ShowArgs.java
3/1
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
3/4
toString, constructors
encapsulation

Read: 8.3-8.4
Lecture: panopto video
Slides: pdf, ppt
Slides: pdf, ppt
Video: constructors
Video: encapsulation
Program: PointClient3.java, Point.java
3/6
critters


Lecture: panopto video
Resources: ass8.zip
3/8
inheritance


Read: 9.1, 9.3
Lecture: panopto video
Slides: pdf, ppt
Video: inheritance (first example)
3/11
ArrayList

Read: 10.1
Lecture: panopto video
Slides: pdf, ppt
Video: ArrayList example
Video: ArrayList example
Program: ArrayListExample.java
3/13
more on arrays
review for final

Lecture: panopto video
Video: array shifting
Program: ArraySample3.java
3/15
critter tournament


Tournament results: Section A
Tournament results: Section B

Final Exam -- Wednesday, March 20, 12:30-2:20