Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Course Schedule

This schedule is updated frequently. Please check the readings and exercises before each class.

MondayTuesdayWednesdayThursdayFriday
Jan 19Jan 20Jan 21
Lecture 1: course overview
Discussion 1: Rust & IDE setup
Jan 22Jan 23
Lecture 2: why Rust? Rust vs Python
Jan 26
Snow day - no class
Jan 27Jan 28
Lecture 3: shell & terminals
Discussion 2: Git Basics
HW 1 out: command line and Git
Jan 29Jan 30
Lecture 4: shell & terminals (2)
Feb 2
Lecture 5: rust variables & types
Feb 3Feb 4
Lecture 6: rust variables & types (2)
Discussion 3: Leetcode exercises
HW 1 due: command line and Git
HW 2 out: Leetcode practice
Feb 5Feb 6
Lecture 7: rust variables & types (3)
Feb 9
Lecture 8: rust variables & types (4)
HW 2 due: Leetcode practice
HW 3 out: Guessing game
Feb 10Feb 11
Lecture 9: rust practice
Discussion 4: Guessing game
Feb 12Feb 13
Lecture 10: comparing programs
Feb 16
Presidents day - no class

HW 3 due: Guessing game
Proj 1 out: Vec
Feb 17
Lecture 11: comparing programs
Feb 18
Midterm 1

Discussion 5: SlowVec
Feb 19Feb 20
Lecture 12: memory
Feb 23
Lecture 13: memory
Proj 1 (part 1) due: Vec
Feb 24Feb 25
Lecture 14: memory
Discussion 6: FastVec
Feb 26Feb 27
Lecture 15: memory
Mar 2
Lecture 16: pointers
Mar 3Mar 4
Lecture 17: pointers
Discussion 7: Pointers and Unsafe
Mar 5Mar 6
Lecture 18: pointers
Mar 9
Spring break - no class

Proj 1 (part 2) due: Vec
Proj 2 out: chatbot
Mar 10
Spring break
Mar 11
Spring break - no class
Mar 12
Spring break
Mar 13
Spring break - no class
Mar 16
Lecture 19: references
Proj 2 (part 1) due: chatbot
Mar 17Mar 18
Lecture 20: references
Discussion 8: Vec code review
Mar 19Mar 20
Lecture 21: references
Mar 23
Lecture 22: ownership & borrowing
Proj 2 (part 2) due: chatbot
Proj 3 out: client-server analytics
Mar 24Mar 25
Lecture 23: ownership & borrowing
Discussion 9: chatbot code review
Mar 26Mar 27
Lecture 24: ownership & borrowing
Mar 30
Lecture 25: ownership & borrowing
Proj 3 (part 1) due: client-server analytics
Mar 31Apr 1
Midterm 2

Discussion 10: TBD
Apr 2Apr 3
Lecture 26: TBD
Apr 6
Lecture 27: TBD
Proj 3 (part 2) due: client-server analytics
Proj 4 out: Tic-Tac-Toe
Apr 7Apr 8
Lecture 28: TBD
Discussion 11: client-server analytics code review
Apr 9Apr 10
Lecture 29: TBD
Apr 13
Lecture 30: TBD
Proj 4 (part 1) due: Tic-Tac-Toe
Apr 14Apr 15
Lecture 31: TBD
Discussion 12: TBD
Apr 16Apr 17
Lecture 32: TBD
Apr 20
Patriots day - no class

Proj 4 (part 2) due: Tic-Tac-Toe
Apr 21Apr 22
Lecture 33: TBD
No discussion
Apr 23Apr 24
Lecture 34: TBD
Apr 27
Lecture 35: TBD
Apr 28Apr 29
Lecture 36: TBD
Discussion 13: Tic-Tac-Toe code review
Apr 30May 1
Study period - no class

Proj 4 (part 3) due: Tic-Tac-Toe
May 4May 5May 6
Final Exam
May 7May 8