Autumn ’25

Summer ’25

Set System Env-Vars in UNIX
How to set true system-wide environment variables on macOS with a simple Launch Agent and shell script, so GUI apps and every shell see them.

7 min read

Clean Disk Space in Ubuntu
Fix apt install errors caused by no free space in /var/cache/apt/archives by locating the full partition and using a temporary cache path.

3 min read

Network IO Models
A walkthrough of the five I/O models on Linux, with C and Java implementations.

15 min read

Spring ’25

Learn Git Data Structure Design
A look at Git's data structures — objects, references, and branches. These concepts are the foundation for understanding how Git actually works.

10 min read

Winter ’24/25

VS Code DevContainer
Use VS Code Dev Containers to develop inside Docker, reusing an existing Dockerfile while keeping dependencies isolated and reproducible.

3 min read

Internet Checksum
Notes from designing an Internet checksum lab, covering parallel summation and incremental checksum updates.

6 min read

Summer ’24

Linux Network Namespace
Hands-on with Linux network namespaces, from ip link, ARP, and route basics to connecting namespaces with veth pairs and a Linux bridge.

13 min read

Shell Programming
Shell startup and features, command forms, I/O redirection and pipes, shell variables and quoting, writing and running shell scripts, plus a brief intro to sed and awk.

5 min read

Spring ’24

Move WSL to Another Drive
Move an installed WSL distribution to another drive by exporting, unregistering, importing, and restoring the default user.

2 min read

Linux Commands
Notes on common Linux commands, shortcuts, and plugins, plus recommended terminals and shells.

7 min read

Winter ’23/24