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 history of software engineering
W1 worksheet
work on LeetCode
Lecture1: OOP
Wed 1/28 Lab Quiz1: debugging LeetCode

Week 4

Date Topic Prep
Mon 2/2 Lecture work on LeetCode
Wed 2/4 Lab Quiz2: debugging on paper

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 W3 worksheet
Lab4 – UML for enigma
begin Lab5 – Enigma
Lecture3: inheritance and UML
Wed 2/18 Lab Quiz 4: UML and writing LeetCode

Week 7

Date Topic Prep
Mon 2/23 Lecture no class
Wed 2/25 Lab Quiz 5: Lab5 topics

Week 8

Date Topic Prep
Mon 3/2 Lecture W4 worksheet
work on LeetCode
begin Lab6 – Dot Chaser
Lecture4: Polymorphism
Wed 3/4 Lab Quiz 6: polymorphism [sample] and writing LeetCode

Week 9

Date Topic Prep
Mon 3/9 Lecture W5 worksheet
work on LeetCode
begin Lab7 – DC Metro
Lecture5: Interfaces and Generics
Wed 3/11 Lab Quiz 7: interfaces and generics [sample] and writing LeetCode

Week 10

Date Topic Prep
Mon 3/16 Lecture no class
Mon 3/18 or Wed 11/26 Lab no class

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
Quiz 8: Lab7 topics

Week 12

Date Topic Prep
Mon 3/30 Lecture W7 worksheet
Lab10 – advanced git
work on LeetCode
Lecture7: Threading
Wed 4/1 Lab Quiz 9: exceptions

Week 13

Date Topic Prep
Mon 4/6 Lecture work on LeetCode
Lab11 – testing threads
Wed 4/8 Lab Quiz 10: threading [sample] and writing LeetCode

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 and writing LeetCode

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: GUIs and writing LeetCode

Week 16

Date Topic Prep
Mon 4/27 Lecture W10 worksheet
how to ace an interview
Lecture10: Management, Design Patterns, Programming Languages
Wed 4/29 Lecture Quiz 13: Tracing, Linked Lists, basic OOP

Finals week

There is no final exam in this course.

Make sure you report all grade corrections/concerns to the professor by 5/1