Course Schedule
Loading...
Click/tap off of the video to close, or hit Esc
0
Syllabus
Sep 04, 2026
Content and Videos
Class
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Syllabus week! Today we will look at what this course is and how it's organized, and strategies for success.
- Introduction
- Course overview
1
Intro and getting started
Sep 11, 2026
Content and Videos
- 1 - What is a command line? [ Play | Link ]
- 2 - What is Unix? [ Play | Link ]
- 3 - Getting around the Unix command line [ Play | Link ]
- 4 - Playing around with the Unix command line [ Play | Link ]
- 5 - Getting an SSH key [ Play | Link ]
Class
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Let's get acquainted with the command line :)
- What is a command line?
- Intro to *nix
Basic
Due Fri, Sep 18 at 11:59 pm on EECS 201 Autograder - html
- Getting access to Unix(-like) command line
- Getting access to the course server
- Some light reading
2
GITing started
Sep 18, 2026
Content and Videos
- 1 - What is version control? [ Play | Link ]
- 2 - What is Git? [ Play | Link ]
- 3 - GITing around [ Play | Link ]
- 4 - GITing things back [ Play | Link ]
- 5 - Git branches [ Play | Link ]
- 6 - Git remotes [ Play | Link ]
Class
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Today we'll be taking a bit of a detour and looking at the basics of version control and Git
- What is version control?
- Basic Git flow
- Git branches
- A taste of Git remotes
Basic
Due Fri, Sep 25 at 11:59 pm on EECS GitLab - html
- Connecting to the course server
- Setting up an existing code base
- Making and merging topic/feature branches
- Setting up a remote
- Running the autograder
Advanced
Submission due Fri, Sep 25 at 11:59 pm
on
Gradescope
-
html
Checkoffs in lab from Fri, Sep 25 to Fri, Oct 02
- Recovering data with Git
3
Unix and You
Sep 25, 2026
Content and Videos
- 1 - What is Unix 2, Electric Boogaloo (2:03) [ Play | Link ]
- 2 - Unix principles (4:39) [ Play | Link ]
- 3 - Unix processes (16:26) [ Play | Link ]
- 4 - Unix files (12:11) [ Play | Link ]
- 5 - Shell background (2:17) [ Play | Link ]
- 6 - Shell operation (8:28) [ Play | Link ]
- 7 - Variables (4:35) [ Play | Link ]
- 8 - Walking the PATH (3:41) [ Play | Link ]
- 9 - Executables and shell scripts (8:02) [ Play | Link ]
Class
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Today we'll be looking at Unix and its workings and how they tie into Bash and other shells.
- What is Unix?
- How does Unix work?
- Interacting with Unix via Shells
4
Shells
Oct 02, 2026
Content and Videos
- 1 - Shell introduction (2:39) [ Play | Link ]
- 2 - Job control (13:41) [ Play | Link ]
- 3 - File redirection++ (11:02) [ Play | Link ]
- 4 - Command grouping (3:47) [ Play | Link ]
- 5 - Expansions (15:19) [ Play | Link ]
- 6 - Quoting (4:35) [ Play | Link ]
- 7 - Control flow (23:16) [ Play | Link ]
- 8 - Sourcing (3:40) [ Play | Link ]
- 9 - Shell configuration (5:31) [ Play | Link ]
Class
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Today we'll look at how to take advantage of Bash.
- Shell operation
- Expansion
- Control flow
- Scripts
- Configuration
5
Regular Expressions
Oct 09, 2026
Content and Videos
- 1 - Regex introduction (4:33) [ Play | Link ]
- 2 - Character literals (4:05) [ Play | Link ]
- 3 - Special characters (9:15) [ Play | Link ]
- 4 - Brackets (5:56) [ Play | Link ]
- 5 - Quantifiers (7:27) [ Play | Link ]
- 6 - Anchors (4:53) [ Play | Link ]
- 7 - Backreferences (6:10) [ Play | Link ]
Class
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Today we'll be going into regular expressions.
- Regular expressions
Fall Study Break (No Class)
Oct 16, 2026
Content and Videos
Class
Enjoy the Fall Study Break!
6
Git Gud
Oct 23, 2026
Content and Videos
- 1 - Fixing commits (12:49) [ Play | Link ]
- 2 - Rebase (12:45) [ Play | Link ]
- 3 - Caveats of rewriting history (5:34) [ Play | Link ]
- 4 - Stash (4:07) [ Play | Link ]
- 5 - Remotes and tracking (10:12) [ Play | Link ]
- 6 - Workflows (19:42) [ Play | Link ]
- 7 - Conflicts (7:47) [ Play | Link ]
Class
Slides: remark(down) · printable
Today we'll be taking a deeper look at Git.
- Rewriting history
- Stashing
- Remotes
- Workflows
- Merge conflicts
7
Build Systems and Make
Oct 30, 2026
Content and Videos
- 1 - What are programs? (3:20) [ Play | Link ]
- 2 - What is a build system? (3:11) [ Play | Link ]
- 3 - What is Make? (1:29) [ Play | Link ]
- 4 - Rules and targets (9:34) [ Play | Link ]
- 5 - Variables (6:37) [ Play | Link ]
- 6 - Automatic variables (5:46) [ Play | Link ]
- 7 - Functions and expansions (1:26) [ Play | Link ]
- 8 - Pattern matching (6:24) [ Play | Link ]
Class
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Today we'll be looking at how code gets built and the tools that help them out
- Building programs
- Build systems
- Make
8
Python
Nov 06, 2026
Content and Videos
- 1 - Intro (0:46) [ Play | Link ]
- 2 - What is Python? (3:11) [ Play | Link ]
- 3 - Variables and data (3:34) [ Play | Link ]
- 4 - Types (9:39) [ Play | Link ]
- 5 - Expressions (3:26) [ Play | Link ]
- 6 - Comprehensions (2:58) [ Play | Link ]
- 7 - Simple statements (1:26) [ Play | Link ]
- 8 - Compound statements (1:51) [ Play | Link ]
- 9 - Functions (0:42) [ Play | Link ]
- 10 - Classes (1:35) [ Play | Link ]
- 11 - Modules (3:10) [ Play | Link ]
- 12 - Conclusion (0:26) [ Play | Link ]
Class
Slides: remark(down) · printable
Today we'll be taking a look at how to program a snake
- Higher level scripting
- What is Python?
- Python extras
9
Libraries
Nov 13, 2026
Content and Videos
- 1 - Intro (1:12) [ Play | Link ]
- 2 - Types of libraries (4:41) [ Play | Link ]
- 3 - Using libraries (7:26) [ Play | Link ]
- 4 - Creating libraries (15:17) [ Play | Link ]
Class
We'll be looking into the idea of libraries, how to use them, and how to create them. This class will be in the context of C and C++, but the general idea can apply to other languages as well.
- What are libraries?
- Using existing libraries
- Creating your own
10
Text Editors
Nov 20, 2026
Content and Videos
- 1 - Intro (1:25) [ Play | Link ]
- 2 - The editors around us (9:01) [ Play | Link ]
- 3 - Intro to Vim (15:07) [ Play | Link ]
- 4 - Vim counts, motions, and operators (3:00) [ Play | Link ]
- 5 - Vim macros (3:26) [ Play | Link ]
- 6 - Vim configuration (3:35) [ Play | Link ]
Class
Today we'll be looking at text editor history and look at more "advanced" text editor features, featuring Vim
- Text editor history
- vim
Basic
Due Wed, Dec 02 at 11:59 pm on EECS GitLab
Coming soon!
Advanced
Submission due Wed, Dec 02 at 11:59 pm
on
Gradescope
Checkoffs in lab from Wed, Dec 02 to Wed, Dec 09
Coming soon!
Thanksgiving Break (No Class)
Nov 27, 2026
Content and Videos
Class
Enjoy the Thanksgiving break!
11
Debugging
Dec 04, 2026
Content and Videos
- 1 -Intro (0:27) [ Play | Link ]
- 2 - Print debugging (9:30) [ Play | Link ]
- 3 - Logging (13:00) [ Play | Link ]
- 4 - Interactive debuggers feat. GDB and LLDB (21:04) [ Play | Link ]
- 5 - Valgrind Memcheck (7:09) [ Play | Link ]
- 6 - Conclusion (9:14) [ Play | Link ]
Class
We'll be looking at methods for debugging C/C++ programs
printf- Logging
- GDB
- Valgrind
Basic
Due Wed, Dec 09 at 11:59 pm on EECS GitLab
Coming soon!
Advanced
Submission due Wed, Dec 09 at 11:59 pm
on
Gradescope
Checkoffs in lab from Mon, Dec 07 to Mon, Dec 14
Coming soon!
Conclusion (No Class)
Dec 11, 2026
Content and Videos
Class
In another semester, we'll have handed the floor over to our IAs to give some small class
Basic
Due Fri, Dec 11 at 11:59 pm on Gradescope
Coming soon!