Course Schedule
Loading...
Click/tap off of the video to close, or hit Esc
Labor Day Weekend
Aug 30, 2024
Content and Videos
Class
Enjoy the Labor Day weekend!
0
Syllabus
Sep 06, 2024
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
Cancelled
Sep 13, 2024
Content and Videos
Class
Something came up for me this day, so have an extra week to get settled in and set up.
1
Intro and getting started
Sep 20, 2024
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, Sep 20 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, Oct 02 at 11:59 pm on Gradescope - pdf
- Getting access to Unix(-like) command line
- Getting access to the course server
- Some light reading
2
GITing started
Sep 27, 2024
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, Sep 27 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
Oct 04, 2024
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, Oct 04 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
Fall Study Break
Oct 11, 2024
Content and Videos
Class
Enjoy the Fall Study Break!
4
Shells
Oct 18, 2024
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, Oct 18 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
5
Regular Expressions
Oct 25, 2024
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, Oct 25 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
Nov 01, 2024
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, Nov 01 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
7
Build Systems and Make
Nov 08, 2024
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, Nov 08 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
Nov 15, 2024
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, Nov 15 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
Nov 22, 2024
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, Nov 22 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
Thanksgiving Break
Nov 29, 2024
Content and Videos
Class
Enjoy the Thanksgiving break!
10
Testing
Dec 06, 2024
Content and Videos
Class
Slides: remark(down) · pdf
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
Dec 06, 2024
Content and Videos
Class
Slides: remark(down) · pdf
Class Recordings: CoE Lec. Cap.
In another semester, we'll have handed the floor over to our IAs to give some small classs
11
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 Wed, Dec 18 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
12
Text Editors
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, Dec 18 at 10:30 am on Canvas
Slides: remark(down) · pdfClass
Today we'll be looking at text editor history and look at more "advanced" text editor features, featuring Vim
- Text editor history
- vim