~/grad/c
C
C Programming
Low-level programming in C: memory management, pointers, data structures, and building tools from scratch.
- - Manual memory management & pointer arithmetic
- - Linked structures and dynamic arrays
- - Makefiles, gdb, valgrind
repo coming soon
~/grad/algorithms
C / PythonCS-GY 6033
Design & Analysis of Algorithms
Implementations and analysis of core algorithms: divide and conquer, dynamic programming, greedy methods, and graphs.
- - Sorting & selection with proofs of running time
- - Dynamic programming solutions
- - Graph algorithms: BFS/DFS, shortest paths, MST
repo coming soon
~/grad/operating-systems
C
Operating Systems
Systems programming close to the kernel: processes, scheduling, concurrency, virtual memory, and file systems.
- - Process creation & a Unix-style shell
- - Threads, locks, and synchronization
- - Memory allocators and paging
repo coming soon
~/grad/networking
C
Computer Networking
Network programming from sockets up: protocols, client/server design, and reliable transport.
- - BSD sockets client/server
- - Implementing protocol logic over UDP/TCP
- - Packet capture and analysis
repo coming soon