Schedule

Readings: EJ numbers refer to Items, not chapters, in Effective Java 3rd edition
PP numbers refer to Topics, not chapters, in Pragmatic Programmer 2nd (20th Anniversary) edition

January
MondayTuesdayWednesdayThursdayFriday
02 03 04
Lecture
Introduction; read PP: prefaces (both), 1-3, 6, 38
slides
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
05
Section
Reasoning about code I
slides, lecture notes, supplemental worksheet (sample solution)
9:30-10:30 OH (Jaela)
Allen CSE 2nd floor breakout + zoom
16:30-17:30 OH (Elijah)
CSE2 131
06
Lecture
Reasoning about code I (concl.); II - Loops (start)
slides, lecture notes
10:00 hw0 due (warmup) No late assignments accepted
gradescope instructions
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
09
Lecture
Program logic - loops (no new notes or slides)
13:00-14:00 OH (Katherine)
Allen CSE 3rd floor breakout
15:30-16:30 OH (Gargi)
CSE2 121 + zoom
10
11:30-12:30 OH (Alex)
CSE2 121
13:00-14:00 OH (Zoey)
CSE2 121
14:00-15:00 OH (Zhennan)
Allen CSE 3rd floor breakout
15:00-16:00 OH (Justin)
Allen CSE 3rd floor breakout
23:00 hw1 due (assertions, proofs)
11
Lecture
Loops (concl.); Specifications, PP: 7, 23
slides, related notes
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
12
Section
Java tools + hw3
slides
9:30-10:30 OH (Jaela)
Allen CSE 2nd floor breakout + zoom
16:30-17:30 OH (Elijah)
CSE2 131
13
Lecture
Specifications (cont.)
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
16
MLK Day
9:30-11:30 OH (Randy)
zoom
15:30-16:30 OH (Gargi)
zoom
17
11:30-12:30 OH (Alex)
CSE2 121
13:00-14:00 OH (Zoey)
CSE2 121
14:00-15:00 OH (Zhennan)
Allen CSE 3rd floor breakout
15:00-16:00 OH (Justin)
Allen CSE 3rd floor breakout
23:00 hw2 due (loop development)
18
Lecture
Specifications (concl.); Start Data Abstractions (ADTs), EJ: 17, 50, 56
slides
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
19
Section
Abstraction, testing, hw4 & junit
slides, worksheet (sample solution), junit demo code
9:30-10:30 OH (Jaela)
Allen CSE 2nd floor breakout + zoom
16:30-17:30 OH (Elijah)
CSE2 131
23:00 hw3 due (Java review / logistics)
20
Lecture
ADTs (concl); Rep Invariants (RI); PP 25
RI slides, related notes
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
23
Lecture
Rep Invariants (concl.);
13:00-14:00 OH (Katherine)
Allen CSE 3rd floor breakout
15:30-16:30 OH (Gargi)
CSE2 121 + zoom
24
11:30-12:30 OH (Alex)
CSE2 121
13:00-14:00 OH (Zoey)
CSE2 121
14:00-15:00 OH (Zhennan)
Allen CSE 3rd floor breakout
15:00-16:00 OH (Justin)
Allen CSE 3rd floor breakout
25
Lecture
Abstraction Functions (AF); Testing (start), PP: 41, 51
AF slides, related notes, testing slides
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
26
9:30-10:30 OH (Jaela)
Allen CSE 2nd floor breakout + zoom
16:30-17:30 OH (Elijah)
CSE2 131
23:00 hw4 due (implement / test)
27
Lecture
Testing (concl.)
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
30
Lecture
Module design and general style notes; EJ: 12, 15-17, 51-52, 57-58, 62, 68; PP: 5, 7-10, 28, 40, 44
slides
13:00-14:00 OH (Katherine)
Allen CSE 3rd floor breakout
15:30-16:30 OH (Gargi)
CSE2 121 + zoom
31
11:30-12:30 OH (Alex)
CSE2 121
13:00-14:00 OH (Zoey)
CSE2 121
14:00-15:00 OH (Zhennan)
Allen CSE 3rd floor breakout
15:00-16:00 OH (Justin)
Allen CSE 3rd floor breakout
01
Lecture
Identity & equality, hashCode; EJ: 10-11, 13-14
slides
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
02
Section
Graph implementation, equals/hashcode & method dispatch
slides, worksheet (sample solution)
9:30-10:30 OH (Jaela)
Allen CSE 2nd floor breakout + zoom
16:30-17:30 OH (Elijah)
CSE2 131
23:00 hw5-1 due (graph ADT design/test)
03
Lecture
hashCode (concl.); Exceptions & assertions; EJ: 49, 69-74, 77
slides
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
February
MondayTuesdayWednesdayThursdayFriday
06
Midterm exam Q&A Review Sunday afternoon 2/5, 3 pm
CSE2 G20
Lecture
Exceptions (cont.)
13:00-14:00 OH (Katherine)
Allen CSE 3rd floor breakout
15:30-16:30 OH (Gargi)
CSE2 121 + zoom
07
11:30-12:30 OH (Alex)
CSE2 121
13:00-14:00 OH (Zoey)
CSE2 121
14:00-15:00 OH (Zhennan)
Allen CSE 3rd floor breakout
15:00-16:00 OH (Justin)
Allen CSE 3rd floor breakout
17:00-18:00 Midterm exam (all sections)
Location GWN 201 (A-I) & GWN 301 (J-Z)
08
Lecture
exceptions (condl.); Subtypes and subclasses (start); EJ: 18-20, 22-23, 40, 64
slides
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
09
Section
hw6 data files and parsing
slides, worksheet (sample solution)
9:30-10:30 OH (Jaela)
Allen CSE 2nd floor breakout + zoom
16:30-17:30 OH (Elijah)
CSE2 131
23:00 hw5-2 due (graph ADT implementation)
10
Lecture
Subtypes (concl.)
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
13
Lecture
Generics (start); EJ: 26-31
slides, code
13:00-14:00 OH (Katherine)
Allen CSE 3rd floor breakout
15:30-16:30 OH (Gargi)
CSE2 121 + zoom
14
11:30-12:30 OH (Alex)
CSE2 121
13:00-14:00 OH (Zoey)
CSE2 121
14:00-15:00 OH (Zhennan)
Allen CSE 3rd floor breakout
15:00-16:00 OH (Justin)
Allen CSE 3rd floor breakout
15
Lecture
Generics (cont.)
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
16
Section
Dijkstra's algorithm; Model-View-Controller, hw7
slides, handout, worksheet (sample solution)
9:30-10:30 OH (Jaela)
Allen CSE 2nd floor breakout + zoom
16:30-17:30 OH (Elijah)
CSE2 131
23:00 hw6 due (social network)
17
Lecture
Generics (concl.); HTML/JavaScript/TypeScript intro
slides, code, code zip, TypeScript Video
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
20
President's Day
9:30-11:30 OH (Randy)
zoom
17:00-18:00 OH (Nuha)
zoom
21
11:30-12:30 OH (Alex)
CSE2 121
13:00-14:00 OH (Zoey)
CSE2 121
14:00-15:00 OH (Zhennan)
Allen CSE 3rd floor breakout
15:00-16:00 OH (Justin)
Allen CSE 3rd floor breakout
22
Lecture
React overview
slides, code (code zip file)
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
23
Section
React & hw8
slides, code (zip archive)
9:30-10:30 OH (Jaela)
Allen CSE 2nd floor breakout + zoom
16:30-17:30 OH (Elijah)
CSE2 131
23:00 hw7 due (generics, Dijkstra's, campus paths)
24
Lecture
Callbacks, Events, and Listeners/Observers
slides, code
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
27
Lecture
Debugging; PP: 20
slides
13:00-14:00 OH (Katherine)
Allen CSE 3rd floor breakout
15:30-16:30 OH (Gargi)
CSE2 121 + zoom
28
11:30-12:30 OH (Alex)
CSE2 121
13:00-14:00 OH (Zoey)
CSE2 121
14:00-15:00 OH (Zhennan)
Allen CSE 3rd floor breakout
15:00-16:00 OH (Justin)
Allen CSE 3rd floor breakout
01
Lecture
HW9, Spark Java, Fetch
slides, code, (zip file)
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
02
Section
hw9, react/ts, etc. Q&A
slides, code (zip archive)
9:00-11:00 OH (Jaela)
zoom 9-10 + Allen CSE 2nd floor breakout 10-11
16:30-17:30 OH (Elijah)
CSE2 131
23:00 hw8 due (JS/TS/React warmup)
03
Lecture
Design patterns 1; EJ: 1-4, 6-7
slides
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
March
MondayTuesdayWednesdayThursdayFriday
06
Lecture
Design patterns 2
slides
13:00-14:00 OH (Katherine)
Allen CSE 3rd floor breakout
15:30-16:30 OH (Gargi)
CSE2 121 + zoom
07
11:30-12:30 OH (Alex)
CSE2 121
13:00-14:00 OH (Zoey)
CSE2 121
14:00-15:00 OH (Zhennan)
Allen CSE 3rd floor breakout
15:00-16:00 OH (Justin)
Allen CSE 3rd floor breakout
08
Lecture
System integration
slides
12:00-13:00 OH (Tanay)
CSE2 121
13:30-14:30 OH (Humza)
CSE2 121
16:00-17:00 OH (Kevin)
Allen CSE 4th floor breakout
09
Section
Review, design patterns & wrapup
slides
9:00-11:00 OH (Jaela)
zoom 9-10 + Allen CSE 2nd floor breakout 10-11
16:30-17:30 OH (Elijah)
CSE2 131
23:00 hw9 due (GUI)
10
Lecture
Project demos & course wrapup
slides
11:30-12:30 OH (Randy)
CSE2 151 + zoom
12:30-13:30 OH (Nuha)
CSE2 121
13:30-14:30 OH (Edison)
CSE2 131 + zoom
15:30-16:30 OH (Sparsh)
zoom
13
16:30 Final exam Q&A Review
JHN 102
14
12:30-2:20 Final exam (all sections)
GWN 201 (A-I) & GWN 301 (J-Z)
15 16 17