/my_open_source_cs

My free open source curriculum to learn computer science

MIT LicenseMIT

my_open_source_cs

My open source curriculum to learn computer science.

This is a curated list of free courses from reputable universities that satisfy the same requirements as an undergraduate computer science degree, minus general education. Helpful resources have also been added for supplementary learning. Please feel free to star/copy this repository and personalize it to your own learning path.

Computer Science Basics / Programming

Courses School Duration Effort Frequency Prerequisites Status
Intro to Computer Science Harvard 10 weeks 10-20 hours/week self-paced none ✔️
Web Programming with Python and JavaScript Harvard 12 weeks 10-20 hours/week self-paced Intro to Computer Science ✔️

Math

Courses School Duration Effort Frequency Prerequisites Status
Calculus 1 URI 12 weeks 6-10 hours/week / Pre-calculus ✔️
Pre-calculus URI 12 weeks 6-10 hours/week / Algebra ✔️
Introduction to Probability and Statistics URI 12 weeks 6-10 hours/week / Algebra ✔️
Algebra URI 12 weeks 6-10 hours/week / none ✔️

Systems

Courses School Duration Effort Frequency Prerequisites Status
Build a Modern Computer from First Principles: From Nand to Tetris Hebrew University of Jerusalem 6 weeks 5 hours/week twice a month basic programming knowledge
Build a Modern Computer from First Principles: From Nand to Tetris II Hebrew University of Jerusalem 6 weeks 10-15 hours/week once a month Build a Modern Computer from First Principles: From Nand to Tetris
Introduction to Operating Systems 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 Status
Computer Science: Algorithms, Theory, and Machines Princeton 10 weeks 2-5 hours/week once a month Calculus 1A (all), basic programming
Algorithms, Part I Princeton 6 weeks 6-12 hours/week once a month Computer Science: Algorithms, Theory, and Machines
Algorithms, Part II Princeton 6 weeks 6-12 hours/week once a month Algorithms, Part I

Applications

Courses School Duration Effort Frequency Prerequisites Status
Database Management Essentials University of Colorado 7 weeks 4-6 hours/week twice a month basic programming & CS knowledge 🟧 (Studying)

Unix

Courses School Duration Effort Frequency Prerequisites Status
Linux Command Line Basics Udacity 1 week 5 hours/week self-paced none ✔️
The Unix Workbench Johns Hopkins University 4 weeks 4 hours/week once a month none ✔️

Supplementary Materials