Twenty steps, nine junctions
Chapters from ten books are interleaved so related ideas meet. Finish each step’s exercises before the next. At every junction, solve the LeetCode set, publish the blog post, and pass the gate. Tick each stop as you reach it.
The ten books
- OSTEP: Operating Systems: Three Easy Pieces, Arpaci-Dusseau
- Compiler: Writing a C Compiler, Nora Sandler
- Calculus: Single and Multivariable Calculus: Early Transcendentals
- Discrete Math: Discrete Mathematics for Computer Scientists
- PPP: Programming: Principles and Practice Using C++, 3rd ed., Stroustrup
- Hefferon: Linear Algebra, 3rd ed., Jim Hefferon
- CS:APP: Computer Systems: A Programmer’s Perspective
- Probability: Probability and Statistics: The Science of Uncertainty
- DPV: Algorithms, Dasgupta, Papadimitriou, Vazirani
- CLRS: Introduction to Algorithms, 4th ed.
Rules
- Solve LeetCode without solutions first; re-solve failures a few days later.
- Do at least 70% of the exercises in every chapter.
- Re-solve a few old problems at each junction.