Below is the course schedule. A Green day indicates that the emphasis will be on UNIX / OS / command-line. A Blue day indicates the emphasis will be on C programming. A Teal day indicates the emphasis will be on a combo of C + UNIX + command line stuff. A Red day indicates an exam. The Topic for each day approximately indicates the topic that the class will be on. The Prep for each day indicates the work you need to have completed BEFORE watching the video content (ideally). TLCL stands for “The Linux Command Line” by Shotts and PIC stands for “Programming in C” by Kochan.
NOTE: The schedule is broken down into MTWTF Schedule. Though this is an online asynchronous course, you should attempt to watch the videos and do the readings based on the schedule shown here. Of course you have the flexibility to mix things up if necessary.
Monday | Tuesday | Wednesday | Thursday | Friday |
6/6/2022 Topic: Course introduction Prep:TLCL Introduction Slides |
6/7/2022 Topic: UNIX, bash navigation, files Prep:TLCL chapters 1 and 2 Slides |
6/8/2022 Topic: SSH, Vim / Nano Prep: TLCL chapter 3 Slides |
6/9/2022 Topic: C basics, variables, I/O, math Prep: TLCL chapter 4 Slides |
6/10/2022 Topic: C basics, variables, I/O, math Prep: PIC chapter 1 Slides |
6/13/2022 Topic: C data types, math Prep: PIC chapter 2 PA 1 due
|
6/14/2022 Topic: C loops and conditionals Prep: PIC chapter 3 Slides |
6/15/2022 Topic: C strings Prep: PIC chapter 4 Slides |
6/16/2022 Topic: C: strings, reading input Prep: PIC chapter 4 |
6/17/2022 Topic: C: functions Prep: PIC chapter 5 Slides PA 2 due
|
6/20/2022 Topic: C: booleans Prep: PIC chapter 5 |
6/21/2022 Topic: C: command line arguments Prep: PIC chapter 5 |
6/22/2022 Topic: C: Pointers Prep: PIC chapter 6 Slides |
6/23/2022 Topic: C: Pointers Prep: None |
6/24/2022 Topic: C: 1D Arrays Prep: PIC chapter 6 Slides PA 3 due
|
6/27/2022 Topic: C: 2D Arrays Slides Prep: PIC chapter 7 |
6/28/2022 Topic: UNIX: Files, permissions Prep: TLCL chapter 7, 8 Slides |
6/29/2022 EXAM 1 |
6/30/2022 Topic: C: File I/O Prep: PIC chapter 15 |
7/1/2022 Topic: GDB and debugging Prep: TLCL chapter 5, PIC chapter 17 test.c makefile Slides PA 4 due
|
7/4/2022 4th of July |
7/5/2022 Topic: GDB and debugging Prep: TLCL chapter 5, PIC chapter 17 |
7/6/2022 Topic: C: Malloc, Free, stack / heap Prep: PIC chapter 10 Slides |
7/7/2022 Topic: C: Malloc, Free, stack / heap Prep: PIC chapter 10 |
7/8/2022 Topic: C: pass-by-value, pass-by-ref, out-params Prep: PIC chapter 7 Slides PA 5 due
|
7/11/2022 Topic: C: Basic Linked List Slides Prep: PIC chapter 10 |
7/12/2022 Topic: Valgrind Slides Prep: PIC chapter 8 |
7/13/2022 Topic: C: Structs Slides Prep: PIC chapter 8 |
7/14/2022 Topic: C: data structures Slides Linked List Code Prep: PIC chapter 8 |
7/15/2022 Topic: C: data structures Prep: PIC chapter 8 PA 6 due
|
7/18/2022 Topic: C: data structures Slides Prep: None |
7/19/2022 Topic: Make, build systems Slides Prep: None |
7/20/2022 Topic: System Calls Slides |
7/21/2022 EXAM 2 |
7/22/2022 Topic: Function Pointers Prep: None PA 7 due
|
7/25/2022 Topic: Processes Slides Prep: TLCL Chapter 10 (again) |
7/26/2022 Topic: Text processing, regex Slides Prep: TLCL Chapter 19 |
7/27/2022 Topic: Text processing, regex Slides Prep: TLCL Chapter 20 |
7/28/2022 Topic: Shell scripting Slides Prep: TLCL Chapter 24 |
7/29/2022 Topic: Shell scripting Prep: TLCL Chapter 25 PA 8 due
|
8/1/2022 Topic: The C Preprocessor Slides Prep: PIC Chapter 12 |
8/2/2022 Topic: Binary I/O Slides Prep: PIC chapter 11 |
8/3/2022 Topic: Bit manipulation Slides Prep: None |
8/4/2022 Topic: Executables, ELF, Static and Dynamic Linking Slides Prep: None |
8/5/2022 Topic: Executables, ELF, Static and Dynamic Linking Prep: None PA 9 due
|
8/8/2022 Topic: Study / Review |
8/9/2022 Topic: Study / Review |
8/10/2022 FINAL EXAM |