Course Schedule
Loading...
Click/tap off of the video to close, or hit Esc
0
Syllabus
Jan 10, 2025
Content and Videos
Class
Slides: remark(down) · pdf
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
Jan 17, 2025
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 Fri, Jan 17 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
Class Recordings: CoE Lec. Cap.
Let's get acquainted with the command line :)
- What is a command line?
- Intro to *nix
Basic
Due Wed, Jan 29 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
Jan 24, 2025
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 Fri, Jan 24 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
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
3
Unix and You
Jan 31, 2025
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 Fri, Jan 31 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
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
Feb 07, 2025
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 Fri, Feb 07 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
Class Recordings: CoE Lec. Cap.
Today we'll be at how to take advantage of Bash.
- Shell operation
- Expansion
- Control flow
- Scripts
- Configuration
Cancelled
Feb 14, 2025
Content and Videos
Class
Something came up for me this day, so have an extra week to get settled in and set up.
5
Regular Expressions
Feb 21, 2025
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 Fri, Feb 21 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
Class Recordings: CoE Lec. Cap.
Today we'll be going into regular expressions.
- Regular expressions
6
Git Gud
Feb 28, 2025
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 Fri, Feb 28 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
Class Recordings: CoE Lec. Cap.
Today we'll be reviewing and working through some examples and using Bash and then go into regular expressions.
- Rewriting history
- Stashing
- Remotes
- Workflows
- Merge conflicts
Break
Mar 07, 2025
Content and Videos
Class
Enjoy your winter (spring?) break!
Cancelled
Mar 14, 2025
Content and Videos
Class
Something came up for me this day, so have an extra week to get settled in and set up.
7
Build Systems and Make
Mar 21, 2025
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 Fri, Mar 21 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
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
Mar 28, 2025
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 Fri, Mar 28 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
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
Apr 04, 2025
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 Fri, Apr 04 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
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
Apr 11, 2025
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 Fri, Apr 11 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Slides: remark(down) · pdf
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
Testing
Apr 18, 2025
Content and Videos
Class
Slides: remark(down) · pdf
Class Recordings: CoE Lec. Cap.
We'll be taking a dip into testing software
- What is and why testing?
- Kinds of testing
- Unit testing
- Test-driven development
- Live TTD demo
Conclusion
Apr 18, 2025
Content and Videos
Class
Slides: remark(down) · pdf
In another semester, we'll have handed the floor over to our IAs to give some small classs
12
Debugging
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 Fri, May 02 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
We'll be looking at methods for debugging C/C++ programs
printf- Logging
- GDB
- Valgrind