Schedule and lectures
All topics below are tentative.
Week 1
| Date | Topic | Prep |
|---|---|---|
| Mon 1/12 Lecture | Syllabus overview, how to succeed Day 1 extra credit assessment |
|
| Wed 1/14 Lab | Lab0 – git setup submitserver setup |
Bring your laptop to labs |
Week 2
| Date | Topic | Prep |
|---|---|---|
| Mon 1/19 Lecture | no class | |
| Wed 1/21 Lab | quick markdown tutorial for worksheets Lab1 – debugging with print statements |
Week 3
| Date | Topic | Prep |
|---|---|---|
| Mon 1/26 Lecture | W1 worksheet work on LeetCode |
Lecture1: OOP |
| Wed 1/28 Lab | Quiz1: cancelled due to snow |
Week 4
| Date | Topic | Prep |
|---|---|---|
| Mon 2/2 Lecture | work on LeetCode | |
| Wed 2/4 Lab | Quiz2: writing LeetCode |
Week 5
| Date | Topic | Prep |
|---|---|---|
| Mon 2/9 Lecture | W2 worksheet Lab2 – understanding unit tests Lab3 – writing tests |
Lecture2: writing tests |
| Wed 2/11 Lab | Quiz3: writing unit tests and writing LeetCode |
Week 6
| Date | Topic | Prep |
|---|---|---|
| Mon 2/16 Lecture | no class | |
| Wed 2/18 Lab | Quiz 4: debugging on paper and writing LeetCode |
Week 7
| Date | Topic | Prep |
|---|---|---|
| Mon 2/23 Lecture | W3 worksheet Lab4 – UML for enigma begin Lab5 – Enigma |
Lecture3: inheritance and UML |
| Wed 2/25 Lab | Quiz 5: inheritance and writing LeetCode |
Week 8
| Date | Topic | Prep |
|---|---|---|
| Mon 3/2 Lecture | W4 worksheet work on LeetCode review Quiz4 begin Lab6 – Dot Chaser |
Lecture4: Polymorphism |
| Wed 3/4 Lab | Quiz 6: polymorphism [sample] and writing LeetCode |
Spring Break
| Date | Topic | Prep |
|---|---|---|
| Mon 3/9 Lecture | no class | |
| Mon 3/11 or Wed 3/13 Lab | no class |
Week 9
| Date | Topic | Prep |
|---|---|---|
| Mon 3/16 Lecture | W5 worksheet work on LeetCode begin Lab7 – DC Metro |
Lecture5: Interfaces and Generics |
| Wed 3/18 Lab | Quiz 7: interfaces and generics [sample] and writing LeetCode |
Week 11
| Date | Topic | Prep |
|---|---|---|
| Mon 3/23 Lecture | W6 worksheet work on LeetCode begin Lab8 – Wordcount |
Lecture6: Exceptions and IO |
| Wed 3/25 Lab | Lab9 – finding faults with unit tests |
Week 12
| Date | Topic | Prep |
|---|---|---|
| Mon 3/30 Lecture | W7 worksheet Lab10 – advanced git work on LeetCode |
Lecture7: Threading |
| Wed 4/1 Lab | Quiz 8: Lab 7 topics (50 min) Quiz 9: Lab 8 topics (remaining time) |
Week 13
| Date | Topic | Prep |
|---|---|---|
| Mon 4/6 Lecture | history of software engineering Lab11 – testing threads (optional extra credit lab) work on LeetCode (optional extra credit on the board) |
|
| Wed 4/8 Lab | Quiz 10: threading [sample] LeetCode extra credit on the board |
Week 14
| Date | Topic | Prep |
|---|---|---|
| Mon 4/13 Lecture | W8 worksheet Lab12 – UML for ServerSim work on Lab13 – ServerSim |
Lecture8: Networking |
| Wed 4/15 Lab | Quiz 11: networking work on Lab13 |
Week 15
| Date | Topic | Prep |
|---|---|---|
| Mon 4/20 Lecture | W9 worksheet Lab14 – Enigma GUI work on LeetCode |
Lecture9: GUIs |
| Wed 4/22 Lab | Quiz 12: Lab 13 topics work on Lab14 |
Week 16
| Date | Topic | Prep |
|---|---|---|
| Mon 4/27 Lecture | Lab15 – Testing LLM-generated code (due at end of class) | |
| Wed 4/29 Lecture | Quiz 13: GUI topics (in regular lecture room, 10am) LeetCode extra credit on board |
Finals week
There is no final exam in this course.
Make sure you report all grade corrections/concerns to the professor by 5/1