Github url

open-source-cs

by ForrestKnight

ForrestKnight /open-source-cs

Video discussing this curriculum:

11.4K Stars 2.0K Forks Last release: Not found MIT License 13 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

The Open Source Computer Science Degree

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 :-- | :--: | :--: | :--: | :--: | :--:Intro to Computer Science | Harvard | 10 weeks | 10-20 hours/week | self-paced | noneMathematical Thinking in Computer Science | UC San Diego | 6 weeks | 2-5 hours/week | once a month | none

Programming

Courses | School | Duration | Effort | Frequency | Prerequisites :-- | :--: | :--: | :--: | :--: | :--:Java Programming: Solving Problems with Software| Duke | 4 weeks | 4-8 hours/week | twice a month | noneJava Programming: Arrays, Lists, and Structured Data| Duke | 4 weeks | 4-8 hours/week | twice a month | Java Programming: Solving Problems with SoftwareObject Oriented Programming in Java| Duke | 6 weeks | 4-6 hours/week | every week | Java Programming: Arrays, Lists, and Structured DataData Structures and Performance| Duke | 6 weeks | 6-10 hours/week | every week | Object Oriented Programming in JavaJava Programming: Principles of Software Design | Duke | 4 weeks | 4-8 hours/week | twice a month | Java Programming: Arrays, Lists, and Structured DataJava Programming: Build a Recommendation System | Duke | 4 weeks | 3-6 hours/week | once a month | Java Programming: Principles of Software DesignProgramming Languages, Part A | UW | 5 weeks | 8-16 hours/week | once a month | Object Oriented Programming in JavaProgramming Languages, Part B | UW | 3 weeks | 8-16 hours/week | once a month | Programming Languages, Part AProgramming Languages, Part C | UW | 3 weeks | 8-16 hours/week | once a month | Programming Languages, Part B

Math

Courses | School | Duration | Effort | Frequency | Prerequisites :-- | :--: | :--: | :--: | :--: | :--:Calculus 1A: Differentiation | MIT | 12 weeks | 6-10 hours/week | self-paced | pre-calculusCalculus 1B: Integration | MIT | 15 weeks | 6-10 hours/week | self-paced | Calculus 1A: DifferentiationCalculus 1C: Coordinate Systems & Infinite Series| MIT | 8 weeks | 6-10 hours/week | self-paced | Calculus 1B: IntegrationLinear Algebra - Foundations to Frontiers | UT Austin | 15 weeks | 6-10 hours/week | self-paced | pre-calculusIntroduction to Probability and Data | Duke | 5 weeks | 5-7 hours/week | twice a month | noneIntro to Statistics | Udacity | 8 weeks | 5-7 hours/week | self-paced | none

Systems

Courses | School | Duration | Effort | Frequency | Prerequisites :-- | :--: | :--: | :--: | :--: | :--: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 knowledgeBuild 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 TetrisIntroduction 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 :-- | :--: | :--: | :--: | :--: | :--:Computer Science: Algorithms, Theory, and Machines | Princeton | 10 weeks | 2-5 hours/week | once a month | Calculus 1A (all), basic programmingAlgorithms, Part I | Princeton | 6 weeks | 6-12 hours/week | once a month | Computer Science: Algorithms, Theory, and MachinesAlgorithms, Part II | Princeton | 6 weeks | 6-12 hours/week | once a month | Algorithms, Part I

Applications

Courses | School | Duration | Effort | Frequency | Prerequisites :-- | :--: | :--: | :--: | :--: | :--:Software Engineering: Introduction | UBCx | 6 weeks | 8-10 hours/week | self-paced | Java Programming: Build a Recommendation SystemMachine Learning | Stanford | 11 weeks | 5-7 hours/week | twice a month | Linear Algebra - Foundations to FrontiersDatabase Management Essentials | CU | 7 weeks | 4-6 hours/week | twice a month | basic programming & CS knowledgeCryptography I| 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 :-- | :--: | :--: | :--: | :--: | :--:Linux Command Line Basics | Udacity | 1 week | 5 hours/week | self-paced | noneThe Unix Workbench | JHU | 4 weeks | 4 hours/week | once a month | none

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.