Learning Resources
A list of learning resources for Computer Science, made and maintained by MakerGhat. By no means is this list exhaustive. If you wish to contribute to this repository, please consider starting a PR. If you’re new to GitHub, please refer this.
Computer Science for School Students
C
- Introduction to Programming through C - highly recommended
- Derek Banas
- freeCodeCamp
- C Documentation
C++
- freeCodeCamp
- Google for Education
- C++ by Udacity
- Advanced C++ by Derek Banas
- C++ Documentation by Microsoft
Java
JavaScript
Go
Python
Ruby
Android Development
Flutter
Compilers
Data Structures and Algorithms
- mycodeschool (good to start)
- Data Structures Easy to Advanced
- Introduction to Algorithms by MIT
- Data Structures by HackerRank
- HackerRank Algorithms
- HackerRank Data Structures
Data Science
- MLCOURSE.AI - recommended
- Data Science by IBM (with financial aid)
- Data Science Essentials by Microsoft
- Python Data Science Handbook by Jake VanderPlas
Machine Learning and Deep learning
- Deep Learning Book by Ian Goodfellow and Yoshua Bengio and Aaron Courville (Start with the Mathematics part first as per the sequence)
- Linear Algebra by Prof. Gilbert Strang at MIT
- Probability and Statistics by Stanford
- StatQuest with Josh Starmer
- Chris Olah’s Blog (highly recommended. The blog-posts are a pure delight to read!)
- Neural Networks and Deep Learning by Michael A. Nielsen
- A course in Machine Learning
(Only Jump to these courses once you’ve a good grip on Mathematics required for ML)
- fast.ai
- Machine Learning by Coursera
- CS231N: Convolutional Neural Networks for Visual Recognition by Stanford
- Introduction to Reinforcement Learning by DeepMind
Natural Language Processing
- CS224n: Natural Language Processing with Deep Learning by Stanford
- Speech and Language Processing by Dan Jurafsky and James H. Martin
- A Code-First Introduction to Language Processing by fast.ai
- Natural Language Processing by Udacity
Operating Systems
- Introduction to Operating Systems by Georgia Tech
- The little book on OS development
- Writing your own Operating System
Web Development using Django
Game Development
- The Cherno
- Brackeys (Using Unity 3D)
- Unity: Beginner to Advanced Complete Course
- CS50’s Introduction to Game Development by Harvard University
- Matthew Hopson
- Harod Serrano
Git and GitHub
- Version Control with Git by Udacity
- Git and GitHub for Poets by The Coding Train
- Interactive Git Tutorial
- Git by Progate
Web Development
- freeCodeCamp
- W3Schools
- HTML AND CSS by Traversy Media
- Web dev crash course by Traversy Media
- The Net Ninja