Path to a free self-taught education in Computer Science!
Go to file
2015-07-19 09:14:14 -03:00
computer-science Stanford Computer Science 101 - add link to statement 2015-06-28 21:47:25 -03:00
.gitignore Add first course folder - cs intro mit 2015-05-26 12:56:21 -03:00
README.md Update README.md 2015-07-19 09:14:14 -03:00

Science

References

Tips

If you want to follow this path, here are some tips! Share your tips with us too!

Topics

Computer Science

  1. Introduction to Computer Science and Programming -
  2. Computer Science 101 - Stanford / Other files -
  3. Systematic Program Design - Part 1: The Core Method
  4. Systematic Program Design - Part 2: Arbitrary Sized Data
  5. Systematic Program Design - Part 3: Arbitrary Sized Data
  6. Fundamentals of Computing
    1. An Introduction to Interactive Programming in Python (Part 1) -
    2. An Introduction to Interactive Programming in Python (Part 2) -
    3. Principles of Computing (Part 1) -
    4. Principles of Computing (Part 2) -
    5. Algorithmic Thinking (Part 1) -
    6. Algorithmic Thinking (Part 2) -
  7. Structure and Interpretation of Computer Programs -
  8. Elements of Software Construction -
  9. Introduction to Algorithms -
  10. Design and Analysis of Algorithms -
  11. Principles of Reactive Programming -
  12. Paradigms of Computer Programming Fundamentals -
  13. Paradigms of Computer Programming Abstraction and Concurrency -
  14. Computer System Engineering -
  15. Computer Language Engineering -
  16. Great Ideas in Theoretical Computer Science -
  17. Performance Engineering of Software Systems -
  18. Engineering Innovation and Design -
  19. Principles of Computer System Design: An Introduction -
  20. How to Process, Analyze and Visualize Data -
  21. Advanced Data Structures -
  22. Advanced Algorithms -
  23. Distributed Algorithms -

Software Testing

  1. Software Testing -
  2. Software Debugging -

Math

  1. Mathematics for Computer Science -
  2. Introduction to Logic -
  3. Linear Algebra -
  4. Coding the Matrix: Linear Algebra through Computer Science Applications -
  5. Calculus One -
  6. Calculus Two -
  7. Linear and Discrete Optimization -
  8. Probabilistic Graphical Models -
  9. Game Theory -
  10. Statistics One -
  11. AP Statistics -

Operating Systems

  1. Operating System Engineering -
  2. Operating Systems and System Programming -

Networks

  1. Networks -
  2. Network and Computer Security -
  3. Network Optimization -

Databases

  1. Database Systems -
  2. Database, Internet, and Systems Integration Technologies -

Cryptography

  1. Cryptography I -
  2. Applied Cryptography -

Compilers

  1. Compilers -

Artificial Intelligence

  1. Artificial Intelligence -

Machine Learning

  1. Practical Machine Learning -
  2. Machine Learning -
  3. Neural Networks for Machine Learning -

Natural Language Processing

  1. Natural Language Processing -
  2. Natural Language Processing -

Robotics

Graphs

Data Mining

  1. Data Mining -

Parallel Programming

  1. Parallel Computing -
  2. Heterogeneous Parallel Programming -

Programming Languages

  1. Practical Programming in C -
  2. Introduction to C Memory Management and C++ Object-Oriented Programming -
  3. Effective Programming in C and C++ -

Others

  1. Introduction to Functional Programming
  2. Engineering Software as a Service
  3. Engineering Software as a Service, Part 2
  4. Automata, Computability, and Complexity -
  5. Computational Biology: Genomes, Networks, Evolution -
  6. Creating Video Games -
  7. Computer Graphics -
  8. User Interface Design and Implementation -
  9. Making Sense of Data -
  10. Data Science -