If you’re a self-taught engineer or bootcamp grad, you owe it to yourself to learn computer science. Thankfully, you can give yourself a world-class CS education without investing years and a small fortune in a degree program 💸.
There are plenty of resources out there, but some are better than others. You don’t need yet another “200+ Free Online Courses” listicle. You need answers to these questions:
- Which subjects should you learn, and why?
- What is the best book or video lecture series for each subject?
This guide is our attempt to definitively answer these questions. Includes translations in 15+ languages.
Subjects include: Programming, Computer Architecture, Algorithms and Data Structures, Math for CS, Operating Systems, Computer Networking, Databases, Languages and Compilers, and Distributed Systems.
TL;DR:
Study all nine subjects below, in roughly the presented order, using either the suggested textbook or video lecture series, but ideally both. Aim for 100-200 hours of study of each topic, then revisit favorites throughout your career 🚀.