Complete a Computer Science Degree in Two Years with 20 Hours of Weekly Study
This curriculum arranges online courses from universities like Harvard and MIT to meet undergraduate graduation requirements. It provides a comprehensive learning roadmap that covers computer science fundamentals, systems, and ethics, going beyond coding skills. You can manage your progress by checking it off in a GitHub repository while engaging with a global learner community.
A Four-Stage Structure from Introduction to Final Project
The curriculum is designed based on computer science undergraduate graduation requirements, excluding general education courses. It begins with an introductory stage to determine if computer science is a good fit, followed by a core stage covering mandatory courses for all majors. The advanced stage allows you to select areas of interest for deeper study, concluding with a final project that receives peer evaluation. Each stage is structured to build naturally on the knowledge from the previous one.
Learning Scope Covering Math, Systems, Security, and Ethics
The learning content extends beyond programming languages and algorithms to include computer architecture, operating systems, networks, security, and ethics. Mathematics focuses on laying the foundation for computer science, covering discrete math, calculus, linear algebra, and probability. The systems area explores how computers work internally, ranging from logic gates to compilers, operating systems, and network protocols. Applied subjects such as machine learning, databases, and computer graphics are also included.
Learning Environment Using Free Resources and Community
All course materials are provided for free or at a low cost, and you can utilize financial aid programs from Coursera and edX. Learners can proceed independently or with peers from around the world. A community is maintained through a Discord server and GitHub issues, where you can ask questions or participate in curriculum improvements. You can manage your progress by checking it off in a GitHub repository, allowing you to easily track your learning status without complex tools.
Time and Background Knowledge to Check Before Starting
Completing this process requires approximately 20 hours of study per week, with high school-level math knowledge (algebra, geometry, pre-calculus) as a prerequisite. Advanced systems courses specifically require a foundation in physics, so you should be careful when selecting electives if you lack this background. While it is recommended to take all courses in order, you can skip some if you already possess the relevant knowledge. Since this process aims for a comprehensive understanding of computer science rather than vocational training, it may not be suitable for those who only want to quickly learn a specific technology stack.