Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ejsdotsh/cs-autodidact

documenting my self-education journey in Computer Science
https://github.com/ejsdotsh/cs-autodidact

computer-science computer-science-education learning-in-public self-learning

Last synced: about 3 hours ago
JSON representation

documenting my self-education journey in Computer Science

Awesome Lists containing this project

README

        

# Computer Science Autodidact

documenting my self-education journey in Computer Science

## learning path

generally following MIT's [6-3 degree chart](http://catalog.mit.edu/degree-charts/computer-science-engineering-course-6-3/) and utilizing [OCW](https://ocw.mit.edu/) to help guide/track my first few *"semesters"*

### semester 1

- review and optimize my tools
- [The Missing Semester of Your CS Education](https://missing.csail.mit.edu/)
- 6.001 - Structure And Interpretation Of Computer Programs
- [OCW 2005 6.001](https://ocw.mit.edu/courses/6-001-structure-and-interpretation-of-computer-programs-spring-2005/)
- [alternate] 6.100A - Introduction to Computer Science Programming in Python
- [OCW 2016 6.0001](https://ocw.mit.edu/courses/6-0001-introduction-to-computer-science-and-programming-in-python-fall-2016/)
- [OCW 2016 6.0002](https://ocw.mit.edu/courses/6-0002-introduction-to-computational-thinking-and-data-science-fall-2016/)
- 18.01 - Calculus 1
- [OCW 2020 18.01](https://ocw.mit.edu/courses/18-01-calculus-i-single-variable-calculus-fall-2020/)
- 8.011 - Physics 1
- [OCW 2016 8.01SC](https://ocw.mit.edu/courses/8-01sc-classical-mechanics-fall-2016/)

### semester 2

- 6.19
- 6.1900 - Introduction to Low-level Programming in C and Assembly
- [OCW 2010 6.087IAP](https://ocw.mit.edu/courses/6-087-practical-programming-in-c-january-iap-2010/)
- 6.1910 - Computation Structures
- [OCW 2017 6.004](https://ocw.mit.edu/courses/6-004-computation-structures-spring-2017/)
- 6.1200 - Mathematics for Computer Science
- [OCW 2015 6.042J](https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-science-spring-2015/)
- 18.02 - Calculus 2
- [OCW 2010 18.02SC](https://ocw.mit.edu/courses/18-02sc-multivariable-calculus-fall-2010/)
- 8.021 - Physics 2
- [OCW 2019 8.02](https://ocw.mit.edu/courses/8-02-physics-ii-electricity-and-magnetism-spring-2019/)

### semester 3

- CS61C - Machine Structures
- [UC Berkeley semester archives](https://inst.eecs.berkeley.edu/~cs61c/archives.html)
- 6.1010 - Fundamentals of Programming
-
- 6.1020 - Software Construction
- [OCW 2016 6.005](https://ocw.mit.edu/courses/6-005-software-construction-spring-2016/)
- 18.06 - Linear Algebra
- [OCW 2011 18.06SC](https://ocw.mit.edu/courses/18-06sc-linear-algebra-fall-2011/)

### semester 4+

- 6.1210 - Introduction to Algorithms
- [OCW 2011 6.006](https://ocw.mit.edu/courses/6-006-introduction-to-algorithms-fall-2011/)
- [OCW 2020 6.006](https://ocw.mit.edu/courses/6-006-introduction-to-algorithms-spring-2020/)
- 6.1220 - Design and Analysis of Algorithms
- 6.1800 - Computer Systems Engineering
- 6.1400 - Computability and Complexity Theory
- 6.5250 - Distributed Algorithms
- 6.5820 - Computer Networks
- 6.5840 - Distributed Computer Systems Engineering

## references and inspiration

- [An Autodidact's Degree in Computer Science](https://pdb64.medium.com/an-autodiadacts-degree-in-computer-science-3afe7df465b0)
- [Teach Yourself Computer Science](https://teachyourselfcs.com/)
- [What every computer science major should know](https://matt.might.net/articles/what-cs-majors-should-know/)
- [A Self-learning, Modern Computer Science Curriculum](https://functionalcs.github.io/curriculum/)
- [OSSU computer science curriculum](https://github.com/ossu/computer-science)
- [10 Books for the Self-Taught Computer Scientist](https://josephchancey.medium.com/10-books-for-the-self-taught-computer-scientist-1cd602d503a9)

### textbooks

- [Structure and Interpretation of Computer Programs](https://web.mit.edu/6.001/6.037/sicp.pdf)
- [Composing Programs](https://www.composingprograms.com/)
- [Computer Systems: A Programmer's Perspective](http://csapp.cs.cmu.edu/3e/home.html)
- [Mathematics for Computer Science](https://courses.csail.mit.edu/6.042/spring17/mcs.pdf)
- [Introduction to Algorithms](http://mitpress.mit.edu/9780262046305/introduction-to-algorithms/)