Level up your coding skills. By building projects from scratch. With succinct & condensed books.
Pick a tool or software that you know, and try to recreate it by coding it from scratch. “From scratch” means not just glueing components together, but taking the time to understand how stuff works.
Why take on challenges like this? The benefits?
Learn network programming and data structures by building a Redis-like server from scratch with C/C++.
Databases are not black boxes. Understand them by building your own, in small steps and simple Golang code (the topic is language agnostic, through).
Build a compiler to learn how programming languages work. Use low-level assembly to learn how computers work.
Walks through a minimal yet complete compiler implementation. Compiles a static-typed language into x64 ELF executables.
Learn network programming and HTTP by coding a web server.