Course Schedule
Loading...
Click/tap off of the video to close, or hit Esc
0
Syllabus
May 06, 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
May 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 ]
Quiz due at Mon, May 11 at 11:59 am on Canvas
Slides: remark(down) · printableClass
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, May 15 at 11:59 pm on EECS 201 Autograder - pdf
- Getting access to Unix(-like) command line
- Getting access to the course server
- Some light reading
2
GITing started
May 13, 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 ]
Quiz due at Wed, May 13 at 11:59 am on Canvas
Slides: remark(down) · printableClass
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap. · 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 Mon, May 18 at 11:59 pm on EECS GitLab - pdf
- 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 Mon, May 18 at 11:59 pm
on
Gradescope
-
pdf
Checkoffs in lab from Mon, May 18 to Mon, Jun 01
- Recovering data with Git
3
Unix and You
May 18, 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 ]
Quiz due at Mon, May 18 at 11:59 am on Canvas
Slides: remark(down) · printableClass
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
May 20, 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 ]
Quiz due at Wed, May 20 at 11:59 am on Canvas
Slides: remark(down) · printableClass
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
Memorial Day (No Class)
May 25, 2026
Content and Videos
Class
No Class (No Class)
May 27, 2026
Content and Videos
Class
5
Regular Expressions
Jun 01, 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 ]
Quiz due at Mon, Jun 01 at 11:59 am on Canvas
Slides: remark(down) · printableClass
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Today we'll be going into regular expressions.
- Regular expressions
6
Git Gud
Jun 03, 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 ]
Quiz due at Wed, Jun 03 at 11:59 am on Canvas
Slides: remark(down) · printableClass
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Today we'll be taking a deeper look at Git.
- Rewriting history
- Stashing
- Remotes
- Workflows
- Merge conflicts
7
Build Systems and Make
Jun 08, 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 ]
Quiz due at Mon, Jun 08 at 11:59 am on Canvas
Slides: remark(down) · printableClass
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
Jun 10, 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 ]
Quiz due at Wed, Jun 10 at 11:59 am on Canvas
Slides: remark(down) · printableClass
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Today we'll be taking a look at how to program a snake
- Higher level scripting
- What is Python?
- Python extras
9
Libraries
Jun 15, 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 ]
Quiz due at Mon, Jun 15 at 11:59 am on Canvas
Slides: remark(down) · printableClass
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
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
Jun 17, 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 ]
Quiz due at Wed, Jun 17 at 11:59 am on Canvas
Slides: remark(down) · printableClass
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
Today we'll be looking at text editor history and look at more "advanced" text editor features, featuring Vim
- Text editor history
- vim
11
Debugging
Jun 22, 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 ]
Quiz due at Mon, Jun 22 at 11:59 am on Canvas
Slides: remark(down) · printableClass
Slides: remark(down) · printable
Class Recordings: CoE Lec. Cap.
We'll be looking at methods for debugging C/C++ programs
printf- Logging
- GDB
- Valgrind
Conclusion (No Class)
Jun 24, 2026
Content and Videos
Class
In another semester, we'll have handed the floor over to our IAs to give some small class