{EDITED VERSION OF} Open Source Computer Science Python Degree by Forrest Knight
The Advanced Open Source Computer Science Degree modified by Noah Wilson
Make a fork and use the status to keep track of your progress
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.
Courses
School
Duration
Effort
Frequency
Prerequisites
Status
Programming for Everybody (Getting Started with Python)
University of Michigan
4 weeks
4-6 hours/week
self-paced
none
Incomplete
Java Programming: Solving Problems with Software
Duke
4 weeks
4-8 hours/week
twice a month
none
Incomplete
Python Data Structures
University of Michigan
4 weeks
4-6 hours/week
self-paced
Programming for Everybody (Getting Started with Python)
Incomplete
Java Programming: Arrays, Lists, and Structured Data
Duke
4 weeks
4-8 hours/week
twice a month
Java Programming: Solving Problems with Software
Incomplete
Using Python to Access Web Data
University of Michigan
4 weeks
4-6 hours/week
self-paced
Python Data Structures
Incomplete
Object Oriented Programming in Java
Duke
6 weeks
4-6 hours/week
every week
Java Programming: Arrays, Lists, and Structured Data
Incomplete
Using Databases with Python
University of Michigan
3 weeks
4-8 hours/week
self-paced
Using Python to Access Web Data
Incomplete
Using Python for Research
Harvard
12 weeks
2-4 hours/week
every week
Python Data Strucures
Incomplete
Java Programming: Principles of Software Design
Duke
4 weeks
4-8 hours/week
twice a month
Java Programming: Arrays, Lists, and Structured Data
Incomplete
Capstone: Retrieving, Processing, and Visualizing Data with Python
University of Michigan
2 weeks
4-6 hours/week
self-paced
Using Databases with Python
Incomplete
Java Programming: Build a Recommendation System
Duke
4 weeks
3-6 hours/week
once a month
Java Programming: Principles of Software Design
Incomplete
Programming Languages, Part A
UW
5 weeks
8-16 hours/week
once a month
Object Oriented Programming in Java
Incomplete
Programming Languages, Part B
UW
3 weeks
8-16 hours/week
once a month
Programming Languages, Part A
Incomplete
Programming Languages, Part C
UW
3 weeks
8-16 hours/week
once a month
Programming Languages, Part B
Incomplete
Courses
School
Duration
Effort
Frequency
Prerequisites
Status
Cloud Computing Specialization
CU
8 months
4 hours
Twice a month
None
Incomplete
Database Management Essentials
CU
7 weeks
4-6 hours/week
twice a month
basic programming & CS knowledge
Incomplete
Cryptography I
Stanford
7 weeks
5 hours/week
once a month
Linear Algebra - Foundations to Frontiers & Introduction to Probability and Data
Incomplete
Courses
School
Duration
Effort
Frequency
Prerequisites
Status
Linux Command Line Basics
Udacity
1 week
5 hours/week
self-paced
none
Incomplete
The Unix Workbench
JHU
4 weeks
4 hours/week
once a month
none
Incomplete
Courses
School
Duration
Effort
Frequency
Prerequisites
Status
Cyber Security Fundamentals
RIT
8 week
10 hours/week
self-paced
Linux Command Line Basics
Incomplete
Computer Forensics
RIT
8 week
10 hours/week
self-paced
Cyber Security Fundamentals
Incomplete
Risk Management
RIT
8 week
10 hours/week
Computer Forensics
none
Incomplete
Network Security
RIT
8 week
10 hours/week
self-paced
Risk Management
Incomplete
Cyber Security Capstone
RIT
8 week
10 hours/week
self-paced
Network Security
Incomplete