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/5/2023 Topic: Course introduction Prep:TLCL Introduction Slides |
6/6/2023 Topic: UNIX, bash navigation, files Prep:TLCL chapters 1 and 2 Slides |
6/7/2023 Topic: SSH, Vim / Nano Prep: TLCL chapter 3 Slides |
6/8/2023 Topic: C basics, variables, I/O, math Prep: TLCL chapter 4 Slides |
6/9/2023 Topic: C basics, variables, I/O, math Prep: PIC chapter 1 Slides (Same as Thursday) |
6/12/2023 Topic: C data types, math Prep: PIC chapter 2 Slides (Same as Last Thursday) PA 1 due
|
6/13/2023 Topic: C loops and conditionals Prep: PIC chapter 3 Slides |
6/14/2023 Topic: C strings Prep: PIC chapter 4 Slides |
6/15/2023 Topic: C: strings, reading input Prep: PIC chapter 4 Slides |
6/16/2023 Topic: C: functions Prep: PIC chapter 5 Slides PA 2 due
|
6/19/2023 Juneteenth Observed |
6/20/2023 Topic: C: booleans, command line arguments Prep: PIC chapter 5 Slides |
6/21/2023 Topic: C: Pointers Prep: PIC chapter 6 Slides |
6/22/2023 Topic: C: Pointers Prep: None Slides |
6/23/2023 Topic: C: 1D Arrays Prep: PIC chapter 6 Slides PA 3 due
|
6/26/2023 Topic: C: 2D Arrays Prep: PIC chapter 7 Slides |
6/27/2023 Topic: UNIX: Files, permissions Prep: TLCL chapter 7, 8 Slides |
6/28/2023 EXAM 1 |
6/29/2023 Topic: C: File I/O Prep: PIC chapter 15 Slides |
6/30/2023 Topic: GDB and debugging Prep: TLCL chapter 5, PIC chapter 17 test.c makefile Slides PA 4 due
|
7/3/2023 Topic: GDB and debugging Prep: TLCL chapter 5, PIC chapter 17 Slides |
7/4/2023 4th of July |
7/5/2023 Topic: C: Malloc, Free, stack / heap Prep: PIC chapter 10 Slides |
7/6/2023 Topic: C: Malloc, Free, stack / heap Prep: PIC chapter 10 Slides |
7/7/2023 Topic: C: pass-by-value, pass-by-ref, out-params Prep: PIC chapter 7 Slides PA 5 due
|
7/10/2023 Topic: Valgrind Prep: PIC chapter 8 Slides |
7/11/2023 Topic: C: Basic Linked List Prep: PIC chapter 10 Slides |
7/12/2023 Topic: C: Structs Prep: PIC chapter 8 Slides |
7/13/2023 Topic: C: data structures Linked List Code Prep: PIC chapter 8 Slides |
7/14/2023 Topic: C: data structures Prep: PIC chapter 8 Slides PA 6 due
|
7/17/2023 Topic: C: data structures Prep: None Slides |
7/18/2023 Topic: Make, build systems Prep: None Slides |
7/19/2023 Topic: System Calls Slides |
7/20/2023 EXAM 2 |
7/21/2023 Topic: Function Pointers Prep: None Slides PA 7 due
|
7/24/2023 Topic: Binary I/O Prep: PIC chapter 11 Slides |
7/25/2023 Topic: Processes Prep: TLCL Chapter 10 Slides |
7/26/2023 Topic: Processes Prep: TLCL Chapter 10 Slides |
7/27/2023 Topic: Text processing, regex Prep: TLCL Chapter 19 Slides |
7/28/2023 Topic: Text processing, regex Prep: TLCL Chapter 20 Slides PA 8 due
|
7/31/2023 Topic: Shell scripting Prep: TLCL Chapter 24 Slides |
8/1/2023 Topic: The C Preprocessor Prep: PIC Chapter 12 Slides |
8/2/2023 Topic: Bit manipulation Prep: None Slides |
8/3/2023 Topic: Executables, ELF, Static and Dynamic Linking Prep: None Slides |
8/4/2023 Topic: Exec and Fork Prep: None Slides PA 9 due
|
8/7/2023 Topic: Study / Review |
8/8/2023 Topic: Study / Review |
8/9/2023 FINAL EXAM |