Computer Science Degree Links
This is a curated list of free courses from reputable universities like MIT, Stanford, and Princeton that satisfy the same requirements as an undergraduate Computer Science degree, minus general education.
Computer Science Basics
Courses | School | Duration | Effort | Frequency | Prerequisites |
UVA | 12 week | 5 hours/week | self-paced | none | |
UC San Diego | 6 weeks | 2-5 hours/week | once a month | none |
Programming
Courses | School | Duration | Effort | Frequency | Prerequisites |
Duke | 4 weeks | 4-8 hours/week | twice a month | none | |
Duke | 4 weeks | 4-8 hours/week | twice a month | Java Programming: Solving Problems with Software | |
Duke | 6 weeks | 4-6 hours/week | every week | Java Programming: Arrays, Lists, and Structured Data | |
Duke | 6 weeks | 6-10 hours/week | every week | Object Oriented Programming in Java | |
Duke | 4 weeks | 4-8 hours/week | twice a month | Java Programming: Arrays, Lists, and Structured Data | |
Duke | 4 weeks | 3-6 hours/week | once a month | Java Programming: Principles of Software Design | |
UW | 5 weeks | 8-16 hours/week | once a month | Object Oriented Programming in Java | |
UW | 3 weeks | 8-16 hours/week | once a month | Programming Languages, Part A | |
UW | 3 weeks | 8-16 hours/week | once a month | Programming Languages, Part B |
Math
Courses | School | Duration | Effort | Frequency | Prerequisites |
MIT | 12 weeks | 6-10 hours/week | self-paced | pre-calculus | |
MIT | 15 weeks | 6-10 hours/week | self-paced | Calculus 1A: Differentiation | |
MIT | 8 weeks | 6-10 hours/week | self-paced | Calculus 1B: Integration | |
UT Austin | 15 weeks | 6-10 hours/week | self-paced | pre-calculus | |
Duke | 5 weeks | 5-7 hours/week | twice a month | none | |
Stanford | 8 weeks | 5-7 hours/week | self-paced | none |
Systems
Courses | School | Duration | Effort | Frequency | Prerequisites |
Hebrew University of Jerusalem | 6 weeks | 5 hours/week | twice a month | basic programming knowledge | |
Hebrew University of Jerusalem | 6 weeks | 10-15 hours/week | once a month | Build a Modern Computer from First Principles: From Nand to Tetris | |
Georgia Tech | 8 weeks | 5-8 hours/week | self-paced | Build a Modern Computer from First Principles: From Nand to Tetris II |
Theory
Courses | School | Duration | Effort | Frequency | Prerequisites |
Princeton | 10 weeks | 2-5 hours/week | once a month | Calculus 1A (all), basic programming | |
Princeton | 6 weeks | 6-12 hours/week | once a month | Computer Science: Algorithms, Theory, and Machines | |
Princeton | 6 weeks | 6-12 hours/week | once a month | Algorithms, Part I |
Applications
Courses | School | Duration | Effort | Frequency | Prerequisites |
UBCx | 6 weeks | 8-10 hours/week | self-paced | Java Programming: Build a Recommendation System | |
Stanford | 11 weeks | 5-7 hours/week | twice a month | Linear Algebra - Foundations to Frontiers | |
CU | 7 weeks | 4-6 hours/week | twice a month | basic programming & CS knowledge | |
Stanford | 7 weeks | 5 hours/week | once a month | Linear Algebra - Foundations to Frontiers & Introduction to Probability and Data |
Unix
Courses | School | Duration | Effort | Frequency | Prerequisites |
Udacity | 1 week | 5 hours/week | self-paced | none | |
JHU | 4 weeks | 4 hours/week | once a month | none |
Last updated