Follow a structured self-study path through computer science fundamentals using entirely free online courses.
Find top-rated MIT or Berkeley courses with the author's homework solutions to practice algorithms and data structures.
Plan a learning roadmap from programming basics all the way through machine learning without paying for a degree.
No code to install, just links to free external courses and the author's homework solutions on GitHub.
This repository is a personal study guide created by a computer science undergraduate student at Peking University in China. Frustrated with standard university coursework, the author turned to free online courses from schools like MIT, UC Berkeley, Princeton, and Harvard, and compiled everything they worked through into this reference. The guide is organized into major subject areas: mathematics (calculus, linear algebra, probability, differential equations, numerical methods), programming basics, data structures and algorithms, electrical engineering fundamentals, computer architecture, machine learning and deep learning, computer systems, and software engineering. Each section contains a table of courses with links to the original course websites, a difficulty rating shown in stars, and in many cases a link to the author's own homework solutions on GitHub. Almost all linked courses are freely available online through MIT OpenCourseWare, UC Berkeley's course listings, or the courses' own public websites. The author also points to a few general resources for discovering high-quality courses, including the MIT OpenCourseWare catalog and a UC Berkeley course dependency map that shows how different classes build on each other. The repository also has a Chinese-language version, linked at the top of the README, which appears to be a more complete and actively maintained edition under a different repository name. The project is intended both as a personal record and as an invitation for others to follow a similar self-directed path. The author notes that struggling with a computer science course is often a sign of poor teaching rather than a personal failing, and that the subject becomes much more approachable with better materials. The full README is longer than what was shown.
← pkuflyingpig on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.