- CS106A - Programming Methodology (Java) - Stanford
- CS106B - Programming Abstractions (C++) - Stanford
- CS107 - Programming Paradigms - Stanford
- CSE341 - Programming Languages, Spring 2013 - University of Washington
- Object Oriented Programming in Java - UC SanDiego and Duke
- 6.031 - Software Construction, Spring 2020 - MIT
- CS212 - Design of Computer Programs - Peter Norvig
- CS210 - Functional Programming in Scala - EPFL
-
Calculus
-
Linear Algebra
-
Probability and Statistics
- 6.041 - Probabilistic Systems Analysis and Applied Probability, Fall 2013 - MIT
- STAT110 - Probability - Harvard
- 18.650 - Statistics for Applications, Fall 2016 - MIT
- 36-705 - Intermediate Statistics, Fall 2016 - CMU
- 6.262 - Discrete Stochastic Processes, Spring 2011 - MIT
- AM207 - Stochastic Methods for Data Analysis, Inference and Optimization, 2016 - Harvard
-
Discrete Maths
-
Opmitisation
-
Maths for ML (mostly books)
- 10-606 - Math Background for Machine Learning, Fall 2017 - CMU
- 18-657 - Mathematics of Machine Learning, Fall 2015 - MIT
- CO-496 - Mathematics for Inference and Machine Learning - Imperial College
- Book - Mathematics for Machine Learning - Imperial College
- Book - Mathematics for Machine Learning - UC Berkeley
-
Other
- MOOC - Introduction to Logic - Stanford
- 18.S096 - Topics in Mathematics with Application in Finance, Fall 2013 - MIT
- MOOC - Game Theory - Stanford
- MOOC - Discrete Optimization - University of Melbourne
- Operations Research - SUNY Binghamton University
- Linear Programming, Fall 2016 - Penn State University
- CS61B - Data Structures, Spring 2019 - UC Berkeley
- 6.006 - Introduction to Algorithms, Fall 2011 - MIT
- CS170 - Efficient Algorithms and Intractable Problems Spring 2020 - UC Berkeley
- COS226 - Algorithms - Princeton
- 6.046J - Design and Analysis of Algorithms, Spring 2015 - MIT
- CS161 - Algorithms: Design and Analysis, Part 1 - Stanford
- CS161 - Algorithms: Design and Analysis, Part 2 - Stanford
- 6.851 - Advanced Data Structures, Spring 2012 - MIT
- CS224 - Advanced Algorithms, Fall 2014 - Harvard
- CS229R - Algorithms for Big Data, Fall 2015 - Harvard
- CS61C - Great Ideas in Computer Architecture, Fall 2019 - UC Berkeley
- CS152 - Computer Architecture and Engineering, Spring 2016 - UC Berkeley Youtube
- 18-447 - Computer Architecture, Spring 2015 - CMU
- 15-418 - Parallel Computer Architecture and Programming, Spring 2016 - CMU
- CS267 - Applications of Parallel Computers, Spring 2016 - UC Berkeley
- 15-213 - Introduction to Computer Systems, Fall 2015 - CMU
- CS162 - Operating Systems and System Programming, Spring 2015 - UC Berkeley
- 6.824 - Distributed Systems, Spring 2020 - MIT
- CS436 - Distributed Computer Systems, Winter 2012 - University of Waterloo
- CS169 - Software Engineering, Spring 2015 - UC Berkeley
- CS6310 - Software Architecture & Design - Georgia Tch
- CS5150 - Software Engineering, Fall 2014 - Cornell
- CS164 - Software Engineering, Spring 2014 - Harvard
- CS145 - Introduction to Databases - Stanford
- CS186 - Introduction to Database Systems, Spring 2015 - UC Berkeley
- 15-445 - Introduction to Database Systems, Fall 2017 - CMU
- 15-721 - Advanced Database Systems, Spring 2018 - CMU
- 14-740 - Fundamentals of Computer Networks, Fall 2017 - CMU
- CS144 - Introduction to Computer Networking - Stanford
- 15-251 - Great Ideas in Theoretical Computer Science - CMU
- CS154 - Automata Theory - Stanford
- Category Theory, Summer 2016
-
Artificial Intelligence
-
Machine Learning
- STATS216 - Statistical Learning, Winter 2016 - Stanford
- CS229 - Machine Learning - Stanford
- CS155 - Machine Learning & Data Mining, Winter 2017 - Caltech
- CS156 - Learning from Data, Caltech
- 10-601 - Introduction to Machine Learning (MS), Spring 2015 - CMU
- 10-701 - Introduction to Machine Learning (PhD), Spring 2011 - CMU
- 10-702 - Statistical Machine Learning, Spring 2015 - CMU
- Information Theory, Pattern Recognition, and Neural Networks, 2012 - Cambridge
- CS189/281A - Introduction to Machine Learning, Spring 2016 - UC Berkeley
- C281B - Scalable Machine Learning, 2012 - UC Berkeley
- STA4273H - Large Scale Machine Learning, Winter 2015 - University of Toronto
- 18.409 - Algorithmic Aspects of Machine Learning, Spring 2015 - MIT
- 9.520 - Statistical Learning Theory and Applications, Fall 2015 - MIT
- CPSC530 - Undergraduate Machine Learning, 2012 - University of British Columbia
- CPSC540 - Graduate Machine Learning, 2013 - University of British Columbia
-
Deep Learning
- CS230 - Deep Learning, Fall 2018 - Stanford
- 6.S191 - Introduction to Deep Learning - MIT
- Machine Learning, Fall 2014 - University of Oxford
- CSC321 - Neural Networks for Machine Learning - University of Toronto
- MOOC - Deep Learning Specialisation- deeplearning.ai
- CS231N - Convolutional Neural Networks for Visual Recognition, Spring 2017 - Stanford
- CS224N - Natural Language Processing with Deep Learning, Winter 2017 - Stanford
- Deep Learning for Natural Language Processing - Oxford
- 6.S094 - Deep Learning for Self-Driving Cars - MIT
- CS294-129 - Designing, Visualizing and Understanding Deep Neural Networks, Fall 2016 - UC Berkeley
-
Reinforcement Learning
- CS294 - Deep Reinforcement Learning, Fall 2018 - UC Berkeley
- COMPM050 - Reinforcement Learning, 2015 - UCL
- CS885 - Reinforcement Learning, Spring 2018 - University of Waterloo
- Advanced Deep Learning & Reinforcement Learning - DeepMind & UCL
- CS294-112 - Deep Reinforcement Learning, Spring 2017 - UC Berkeley
-
Probabilistic Graphical Models
-
Miscs
- CS246 - Mining of Massive Datasets - Stanford
- MOOC - Data Mining - University of Illinois
- CS224W - Social and Information Network Analysis, Fall 2017 - Stanford
- MOOC - Recommender Systems - University of Minnesota
- Information Retrival, Fall 2017 - University of Freiburg
- Information Retrieval and Web Search Engines, Winter 2015 - Technische Universität Braunschweig