i wanted to make low level projects from scratch and i thought this might be good starting list for my own
-
Web Server
- HTTP
- sockets
- request/response cycle
- routing
- concurrency basics
-
Shell
- processes
- stdin/stdout
- pipes
- execution
- environment variables
-
Git
- hashing
- blobs
- trees
- commits
- content-addressable storage
-
Redis
- TCP servers
- in-memory storage
- serialization
- persistence
- protocols
- concurrency
-
Docker
- namespaces
- cgroups
- isolation
- containers
- Linux internals
-
Database
- B+ trees
- indexing
- storage engines
- query parsing
-
Programming Language
- parsing
- ASTs
- interpreters
- execution
- compilers