The following is the current weekly schedule. This schedule is subject to change and will be frequently updated throughout the semester. The latest deadlines may also be found on Canvas.
Week 01
Tue 08/24
Recordings
Tue 08/24
Agenda
Resources
Thu 08/26
Recordings
Thu 08/26
Agenda
Fri 08/27
Agenda
Assignments
- 08/27: Introductions
- 08/27: Forum Setup
- 08/27: Course Syllabus
- 08/31: Week 01 Lecture
- 08/31: Week 01 Participation
Dates and Deadlines
- 08/24: Classes Begin
Assignments
- 09/03: ArgumentMap
- 09/03: Setup Homework
- 09/03: Git/Github Resource
Dates and Deadlines
- Due: Introductions
- Due: Forum Setup
- Due: Course Syllabus
- 08/30: Add Deadline
Week 02
Tue 08/31
Recordings
Tue 08/31
Agenda
Thu 09/02
Recordings
Thu 09/02
Agenda
Fri 09/03
Agenda
Assignments
- 09/07: Week 02 Lecture
- 09/07: Week 02 Participation
- 09/07: Paths and Files
- 09/10: Lecture Setup
- 12/09: CS Event
- 12/09: Piazza Post
- 12/09: Piazza Response
Dates and Deadlines
- Due: Week 01 Lecture
- Due: Week 01 Participation
Assignments
- 09/07: Data Structures
Assignments
- 09/10: TextFileStemmer
Dates and Deadlines
- Due: ArgumentMap
- Due: Setup Homework
- Due: Git/Github Resource
- 09/06: Labor Day (No Classes)
Week 03
Tue 09/07
Recordings
Tue 09/07
Agenda
Thu 09/09
Recordings
Thu 09/09
Agenda
Fri 09/10
Agenda
Assignments
- 09/14: Week 03 Lecture
- 09/14: Week 03 Participation
- 09/14: Using Maps
- 09/17: Code Review Intake
- 09/28: Project 1 Inverted Index
Dates and Deadlines
- Due: Week 02 Lecture
- Due: Week 02 Participation
- Due: Paths and Files
- Due: Data Structures
Assignments
- 09/14: Instance vs Identifier
- 09/14: Instance vs Static
Assignments
- 09/17: SimpleJsonWriter
- 09/17: Project Setup
Dates and Deadlines
- Due: TextFileStemmer
- Due: Lecture Setup
- 09/10: Drop Deadline
Week 04
Tue 09/14
Recordings
Tue 09/14
Agenda
Thu 09/16
Recordings
Thu 09/16
Agenda
Fri 09/17
Agenda
Assignments
- 09/21: Week 04 Lecture
- 09/21: Week 04 Participation
- 09/21: Mutability Part 1
- 09/21: Mutability Part 2
Dates and Deadlines
- Due: Week 03 Lecture
- Due: Week 03 Participation
- Due: Using Maps
- Due: Instance vs Identifier
- Due: Instance vs Static
Assignments
- 09/24: TextFileIndex
- 09/24: CS Belonging Survey 1
Dates and Deadlines
- Due: SimpleJsonWriter
- Due: Project Setup
- Due: Code Review Intake
Week 05
Tue 09/21
Recordings
Tue 09/21
Agenda
Additional Content
Thu 09/23
Recordings
Thu 09/23
Agenda
Fri 09/24
Agenda
- Project Design
- Homework Help
- Project Help
- Code Reviews
Assignments
- 09/28: Week 05 Lecture
- 09/28: Week 05 Participation
- 10/01: Inheritance Keywords
- 10/01: Collections Revisited
Dates and Deadlines
- Due: Week 04 Lecture
- Due: Week 04 Participation
- Due: Mutability Part 1
- Due: Mutability Part 2
Assignments
- 10/01: Casting
- 10/01: Nested Classes
Week 06
Tue 09/28
Recordings
Tue 09/28
Agenda
Thu 09/30
Recordings
Thu 09/30
Agenda
- Lambda Expressions
- – LambdaDemo.java
- Stream Basics
- Stream Pipelines
- Stream Pipelines
- – StreamDemo.java
- – ParallelStreamBenchmark.java
Additional Content
Fri 10/01
Agenda
- Homework Help
- Project Help
- Code Reviews
Assignments
- 10/05: Week 06 Lecture
- 10/05: Week 06 Participation
- 10/26: Project 2 Partial Search
- 10/05: Project 2 Writeup
- 10/05: Java Features
Dates and Deadlines
- Due: Week 05 Lecture
- Due: Week 05 Participation
- Due: Project 1 Inverted Index
Assignments
- 10/08: Lambda Expressions
- 10/08: Stream Pipelines
- 10/08: Stream Benchmark
Assignments
- 10/08: TextFileFinder
Dates and Deadlines
- Due: TextFileSorter
- Due: Inheritance Keywords
- Due: Collections Revisited
- Due: Casting
- Due: Nested Classes
Week 07
Tue 10/05
Recordings
Tue 10/05
Agenda
Thu 10/07
Recordings
Thu 10/07
Agenda
Additional Content
Fri 10/08
Agenda
- Homework Help
- Project Help
- Code Reviews
Assignments
- 10/12: Week 07 Lecture
- 10/12: Week 07 Participation
Dates and Deadlines
- Due: Week 06 Lecture
- Due: Week 06 Participation
- Due: Project 2 Writeup
- Due: Java Features
Assignments
- 10/22: Regular Expressions
Assignments
- 10/22: LinkParser
Dates and Deadlines
- Due: TextFileFinder
- Due: Lambda Expressions
- Due: Stream Pipelines
- Due: Stream Benchmark
- Due: Project 1 First Review
Week 08
Tue 10/12
Agenda
Thu 10/14
Recordings
Thu 10/14
Agenda
Fri 10/15
Agenda
- Homework Help
- Project Help
- Code Reviews
Assignments
- 10/21: Week 08 Lecture
- 10/21: Week 08 Participation
Dates and Deadlines
- Due: Week 07 Lecture
- Due: Week 07 Participation
Assignments
- 10/21: Exam 1 Retake
- 10/22: Unit Testing
Assignments
- 10/22: HtmlCleaner
Week 09
Tue 10/19
No Class
- Fall Break
Thu 10/21
Recordings
Thu 10/21
Agenda
Additional Content
Fri 10/22
Agenda
- Homework Help
- Project Help
- Code Reviews
Assignments
- 10/26: Week 09 Lecture
- 10/26: Week 09 Participation
- 10/29: Assert Statements
- 10/29: Logging
Dates and Deadlines
- Due: Week 08 Lecture
- Due: Week 08 Participation
- Due: Exam 1 Retake
Assignments
- 10/29: LoggingSetup
Dates and Deadlines
- Due: LinkParser
- Due: HtmlCleaner
- Due: Regular Expressions
- Due: Unit Testing
Week 10
Tue 10/26
Recordings
Tue 10/26
Agenda
Thu 10/28
Recordings
Thu 10/28
Agenda
Fri 10/29
Agenda
- Homework Help
- Project Help
- Code Reviews
Assignments
- 11/02: Week 10 Lecture
- 11/02: Week 10 Participation
- 11/05: Midterm Survey
- 11/16: Project 3 Multithreading
- 11/05: Project 3 Writeup
Dates and Deadlines
- Due: Week 09 Lecture
- Due: Week 09 Participation
- Due: Project 2 Partial Search
Assignments
- 11/05: Thread Basics
- 11/12: Synchronization
Assignments
- 11/12: ReadWriteLock
Dates and Deadlines
- Due: LoggingSetup
- Due: Assert Statements
- Due: Logging
Week 11
Tue 11/02
Recordings
Tue 11/02
Agenda
Thu 11/04
Recordings
Thu 11/04
Agenda
Fri 11/05
Agenda
- Homework Help
- Project Help
- Code Reviews
Assignments
- 11/09: Week 11 Lecture
- 11/09: Week 11 Participation
- 11/12: ReadWriteLock
Dates and Deadlines
- Due: Week 10 Lecture
- Due: Week 10 Participation
Assignments
- 11/12: PrimeFinder
Dates and Deadlines
- Due: Midterm Survey
- Due: Thread Basics
- Due: Project 3 Writeup
- Due: Project 2 First Review
- 11/05: Withdraw Deadline
Week 12
Tue 11/09
Recordings
Tue 11/09
Agenda
Tue 11/09
Assignments
Thu 11/11
Recordings
Thu 11/11
Agenda
Fri 11/12
Agenda
- Homework Help
- Project Help
- Code Reviews
Fri 11/12
Assignments
Dates and Deadlines
- Due: Week 11 Lecture
- Due: Week 11 Participation
- 11/09: Registration Begins
Dates and Deadlines
- Due: Synchronization
- Due: Work Queues
- Due: ReadWriteLock
- Due: PrimeFinder
Week 13
Tue 11/16
Recordings
Tue 11/16
Agenda
Thu 11/18
Recordings
Thu 11/18
Agenda
Fri 11/19
Agenda
- Homework Help
- Project Help
- Code Reviews
Fri 11/19
Assignments
Assignments
- 11/23: Week 13 Lecture
- 11/23: Week 13 Participation
- 11/23: Servlet Contexts
- 12/07: Project 4 Web Crawler
Dates and Deadlines
- Due: Week 12 Lecture
- Due: Week 12 Participation
- Due: Project 3 Multithreading
Assignments
Dates and Deadlines
- Due: HtmlFetcher
- Due: HTTP Basics
- Due: Dynamic Web
Week 14
Tue 11/23
Recordings
Tue 11/23
Agenda
Thu 11/25
No Class
- Thanksgiving Break
Fri 11/26
No Class
- Thanksgiving Break
Assignments
- 11/30: Week 14 Lecture
- 11/30: SQL Joins
- 11/30: SQL Groups
Dates and Deadlines
- Due: Week 13 Lecture
- Due: Week 13 Participation
- Due: Servlet Contexts
Week 15
Tue 11/30
Agenda
Thu 12/02
Recordings
Thu 12/02
Agenda
Fri 12/03
Agenda
- Homework Help
- Project Help
- Code Reviews
Assignments
- 12/07: Week 15 Lecture
- 12/07: Week 15 Participation
Dates and Deadlines
- Due: Week 14 Lecture
- Due: SQL Joins
- Due: SQL Groups
Assignments
- 12/09: Exam 2 Retake
- 12/09: Final Grade Plan
- 12/09: CS Belonging Survey 2
Dates and Deadlines
Week 16
Tue 12/07
Recordings
Tue 12/07
Agenda
End of Semester Deadlines
- 12/09: Week 16 Lecture
- 12/09: CS Event
- 12/09: Piazza Post
- 12/09: Piazza Response
- 12/09: Final Grade Plan
- 12/09: CS Belonging Survey 2
- 12/09: Exam 2 Retake
Assignments
- 12/09: Week 16 Lecture
Dates and Deadlines
- Due: Week 15 Lecture
- Due: Week 15 Participation
- Due: Project 4 Web Crawler
- 12/07: Classes End