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 / Data Science degree, minus general education.
If it has been awhile since you have been in the classroom or need to take your learning skills to the next level this course is mandatory. This was my survival kit when I worked full time while pursuing a B.S. in Computer Science.
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Learning How to Learn: Powerful mental tools to help you master tough subjects | Deep Teaching Solutions | 4 weeks | 3-4 hours/week | self-paced | none | Coursera |
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Intro to Computer Science | Harvard | 10 weeks | 10-20 hours/week | self-paced | none | EdX |
CS50's Introduction to Programming with Python | Harvard | 10 weeks | 10-20 hours/week | self-paced | none | EdX |
Mathematical Thinking in Computer Science | UC San Diego | 6 weeks | 2-5 hours/week | once a month | none | Coursera |
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Python for Everybody Specialization | University of Michigan | 8 months | 3-6 hours/week | self-paced | none | Coursera |
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Calculus 1A: Differentiation | MIT | 12 weeks | 6-10 hours/week | self-paced | pre-calculus | EdX |
Calculus 1B: Integration | MIT | 15 weeks | 6-10 hours/week | self-paced | Calculus 1A | EdX |
Calculus 1C: Coordinate Systems & Infinite Series | MIT | 8 weeks | 6-10 hours/week | self-paced | Calculus 1B | EdX |
18.01x Single Variable Calculus | MIT | 10 months | 6-10 hours/week | self-paced | pre-calculus | EdX
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Linear Algebra - Foundations to Frontiers | UT Austin | 15 weeks | 6-10 hours/week | self-paced | pre-calculus | EdX |
Introduction to Statistics | Stanford | 7 weeks | 5 hours/week | self-paced | none | Coursera |
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Database Design and Basic SQL in PostgreSQL | University of Michigan | 4 weeks | 4-6 hours/week | self-paced | Programming basics | Coursera |
Intermediate PostgreSQL | University of Michigan | 4 weeks | 4-6 hours/week | self-paced | Previous course | Coursera |
JSON and Natural Language Processing in PostgreSQL | University of Michigan | 4 weeks | 4-6 hours/week | self-paced | Previous course | Coursera |
Database Architecture, Scale, and NoSQL with Elasticsearch | University of Michigan | 4 weeks | 4-6 hours/week | self-paced | Previous course | Coursera |
PostgreSQL for Everybody | University of Michigan | 4 months | 4-6 hours/week | self-paced | Programming basics | Coursera Databases: Relational Databases and SQL | Stanford | 6 weeks | 5-10 hours/week | self-paced | none | EdX
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Applied Data Science with Python Specialization | University of Michigan | 5 months | 7 hours/week | self-paced | Python programming skills | Coursera |
Optional: IBM Data Science Professional Certificate | IBM | 10 months | 4 hours/week | self-paced | none | Coursera
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Build a Modern Computer from First Principles I | Hebrew University | 6 weeks | 10-15 hours/week | self-paced | none | Coursera |
Build a Modern Computer from First Principles II | Hebrew University | 6 weeks | 10-15 hours/week | self-paced | Part I | Coursera |
Introduction to Operating Systems | Georgia Tech | 8 weeks | 5-8 hours/week | self-paced | Part II | Udacity |
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Computer Science: Algorithms, Theory, and Machines | Princeton | 10 weeks | 2-5 hours/week | once a month | Calculus, basic programming | Coursera |
Algorithms, Part I | Princeton | 6 weeks | 6-12 hours/week | once a month | Previous course | Coursera |
Algorithms, Part II | Princeton | 6 weeks | 6-12 hours/week | once a month | Part I | Coursera |
Automata Theory | Stanford | 6 weeks | 4-8 hours/week | self-paced | Theory basics | Coursera |
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Database Management Essentials | CU | 7 weeks | 4-6 hours/week | twice a month | basic programming & CS knowledge | Coursera |
Cryptography I | Stanford | 7 weeks | 5 hours/week | once a month | Linear Algebra | Coursera |
Applied Cryptography | CU | 6 weeks | 4–6 hours/week | self-paced | programming | EdX |
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Linux Command Line Basics | Udacity | 1 week | 5 hours/week | self-paced | none | Udacity |
The Unix Workbench | JHU | 4 weeks | 4 hours/week | once a month | none | Coursera |
Courses | School | Duration | Effort | Frequency | Prerequisites | Provider |
---|---|---|---|---|---|---|
Open Source Software Development, Linux and Git Specialization | The Linux Foundation | 4 Months | 3-5 Hours/week | self-paced | some programming | Coursera |
Version Control with Git | 1 week | 5 hours | self-paced | none | Coursera |