The schedule will change as the course progresses, in part based on student interests. If you are particularly interested in some topic not covered here, send mail to the course staff.

January
MondayTuesdayWednesdayThursdayFriday
05
11:30-12:20 Lecture
SAV 264
intro & primitive types (html)
06 07
11:00 ex0 due (soln)
11:30-12:20 Lecture
SAV 264
pointers (html)
08
Section
C/C++ build
09
11:00 ex1 due (soln)
11:30-12:20 Lecture
SAV 264
pointers, pointers (html)
12
11:00 ex2 due (soln)
11:30-12:20 Lecture
SAV 264
malloc & free (html)
13
23:00 hw0 due
14
11:00 ex3 due (soln)
11:30-12:20 Lecture
SAV 264
data structures (html)
15
Section
memory errors (code)
16
Read: Unix
11:00 ex4 due (soln)
11:30-12:20 Lecture
SAV 264
system calls (html)
19
Martin Luther King Day
20 21
11:00 ex5 due (soln)
11:30-12:20 Lecture
SAV 264
file I/O (html)
22
Section
POSIX & C I/O (code)
23
11:00 ex6 due (soln)
11:30-12:20 Lecture
SAV 264
mmap (html)
26
11:00 ex7 due (soln)
11:30-12:20 Lecture
SAV 264
C++ intro (html)
27
23:00 hw1 due
28
11:30-12:20 Lecture
SAV 264
classes (html)
29
Section
C++ I
30
Read: MapReduce
11:00 ex8 due (soln)
11:30-12:20 Lecture
SAV 264
C++ in action (html)

February
MondayTuesdayWednesdayThursdayFriday
02
11:00 ex9 due (soln)
11:30-12:20 Lecture
SAV 264
rule of three (html)
03 04
11:00 ex10 due (soln)
11:30-12:20 Lecture
SAV 264
object model (html)
05 06
11:30-12:20 Midterm exam (soln)
09
11:00 ex11 due (soln)
11:30-12:20 Lecture
SAV 264
templates & STL (html)
10
23:00 hw2 due
11
11:30-12:20 Lecture
SAV 264
smart pointers (html)
12
Section
C++ II (code)
13
11:30-12:20 Lecture
SAV 264
Rust (by Stuart Pernsteiner)
16
Presidents Day
17 18
Hack day
11:00 ex12 due (soln)
19
Section
C++ III
20
Read: Valgrind
11:00 ex13 due (soln)
11:30-12:20 Lecture
SAV 264
valgrind (html)
23
11:30-12:20 Lecture
SAV 264
networking intro (html)
24 25
11:30-12:20 Lecture
SAV 264
sockets (html)
26
Section
networking (code)
23:00 hw3 due
27
11:30-12:20 Lecture
SAV 264
node.js (by Stefan Dierauf)

March
MondayTuesdayWednesdayThursdayFriday
02
11:00 ex15 due (soln)
11:30-12:20 Lecture
SAV 264
concurrency intro (html)
03 04
11:00 ex17 due (soln)
11:30-12:20 Lecture
SAV 264
synchronization (html)
05
Section
threads (code)
06
Read: Eraser
11:00 ex18 due
11:30-12:20 Lecture
SAV 264
data races (original slides, by James Wilcox)
09
11:00 ex19 due
11:30-12:20 Lecture
SAV 264
undefined behavior
10 11
Hack day
12
Section
final review
23:00 hw4 due
13
11:30-12:20 Lecture
SAV 264
wrapup (html)
16 17 18
14:30-16:20 Final exam (soln)
19 20