Schedule


This schedule should be considered tentative, at least until it actually takes place! Consult the lecture demos repository for in-class exercises, where applicable.

Week Date Description Notes
1 Wed, Jan 25

01 - Introduction

Fri, Jan 27

02 - The Unix file system

Dark Slides Light Slides
2 Mon, Jan 30

03 - Manipulating Files and Using Git

Dark Slides Light Slides
Demos:
  • File permissions gone wild.
Wed, Feb 01

04 - Package Management

Dark Slides Light Slides
Misc:
  • Last day to add.
Fri, Feb 03

05 - More Files, Chaining Commands, Piping and Redirection

Dark Slides Light Slides
Demos:
  • Basic text processing.
Misc:
  • Contains two of the most useful commands you will ever use.
3 Mon, Feb 06

06 - Intro to {Scripting, Customizing, Text Editors}

Demos:
  • Customize your terminal and vim.
Wed, Feb 08

07 - Processes and Jobs

Demos:
  • Mastering vlc in the terminal.
Misc:
  • Last day to drop.
Fri, Feb 10

08 - Superlative Streams

Demos:
  • sed and html generation.
4 Mon, Feb 13

09 - Bash Scripting II

Demos:
  • Looping through files.
Wed, Feb 15

10 - Bash Scripting III, Git Merging and Diffs

Demos:
  • A forced merge conflict.
Fri, Feb 17

11 - Advanced Bash, Git Branching

5 Mon, Feb 20 February Break (No Class)
Wed, Feb 22

12 - awk/gawk, More Git Branching

Fri, Feb 24

13 - Python, Git Branching Wrap-Up

Demos:
  • Creating your own branch.
6 Mon, Feb 27

14 - TBD

Demos:
  • Debugging python3.
Wed, Mar 01

15 - Build Systems, Git Merging and Working Across Branches

Fri, Mar 03

16 - Working Remotely & Closing Git Branches

7 Mon, Mar 06

17 - Advanced Git

Wed, Mar 08

18 - Conclusions

Fri, Mar 10

Additional Material: TBD

8 Mon, Mar 13

No class

Wed, Mar 15

No class

Fri, Mar 17

No class