Learning Resources

“It’s not about information anymore, it’s about curation.” Suzana Ilić (MLT)

This section contain a collection of online resources on math, machine learning, computer science and data science tools 📚🤓.


The Linear Algebra course of professor Gilbert Strang (MIT).

An Applied Numerical Computing course with the open access book Introduction to Applied Linear Algebra by S. Boyd and L. Vandenberghe.

The Convex Optimization course of Stephen Boyd.

A probability course developed and given by the professor Jonh Tsitsiklis (MIT): Probability - The Science of Uncertainty and Data.

An introductory probability book focused on data science with code examples in MATLAB, Python, Julia, and R: Introduction to Probability for Data Science (Stanley H. Chan).

Machine Learning

A collection of interactive machine learning examples in google colab notebooks: Seedbank.

The Bishop’s book Pattern Recognition and Machine Learning.

A book that provides an introduction to statistical learning methods with applications in the R programming language: An introduction to Statistical Learning. and the MOOC version of the book.. For a more advanced treatment, The Elements of Statistical Learning.

The book Feature Engineering and Selection: A Practical Approach for Predictive Models by Max Kuhn and Kjell Jonhson gives you tools for representing predictors.

Mathematics for Machine Learning is a book that provide the math skills to read more advance machine learning books.

Repository of the book Machine Learning Refined: Foundations, Algorithms, and Applications by Jeremy Watt, Reza Borhani, Aggelos K. Katsaggelos.

Patterns, Predictions, and Actions: A story about machine learning (Hardt, Recht 2021)

Fairness and machine learning: Limitations and Opportunities (Barocas, Hardt, Narayanan 2021)

Probabilistic Machine Learning: An Introduction repository with google colab suplemental material

Neural Networks & Deep Learning

A beginner’s Guide to the Mathematics of Neural Networks

Neural Networks and Deep Learning (Nielsen Open Access Book)

CS231n Convolutional Neural Networks for Visual Recognition (Stanford course site)

Full Stack Deep Learning

DS-GA 1008: Deep Learning NYU (Yann LeCun & Alfredo Canziani 2020)

AMMI Geometric Deep Learning Course (Bronstein et al 2021)

Reinforcement Learning Deepmind x UCL (2021 lecture series)

MIT 6.S192: Deep Learning for Art, Aesthetics, and Creativity

Computer Science

The MIT introductory course on Computer Science and programming using python via EDX:

An open access book about Problem Solving with Algorithms and Data Structures using Python, by Brad Miller and David Ranum.

The Stanford Algorithms Specialization via coursera, by Tim Roughgarden.

A tool for visualize code execution, useful to understand algorithms and tricky code steps: python-tutor.

MIT 18.S191: Introduction to Computational Thinking with Julia (Fall 2020).

Designing Data-Intensive Applications (lecture series by Martin Kleppmann).

Machine Learning System Design Pattern.

Data Science tools

R for Data Science is a book that explain you more than a bunch of tools to work with data in R. It gives you a mental model to work in data science projects and a package to implement each part of the model.

A more understanding of the R language, Advanced R by Hadley Wickham.

Fundamental of Data Visualization, by Claus Wilke gives you a precise mix of theory and practical tips about making great visualizations.

The grammar of graphics is a theory developed by Wilkinson that gives you a practical way to describe a plot. Ggplot2 is an R package that implement this theory and you can learn in the ggplot2: Elegant Graphics for Data Analysis book (again Wickham).

A great resource to learn how to build interactive applications with R and shiny is the Mastering Shiny book.

Data Science in a Box provides content on how to structure a data science course.

In python, we have the Altair library that gives you a declarative visualization tool that works based on the grammar of graphics.

Research Software Engineering with Python


David Ha Blog

Google Tech Dev Guide


Red Blob Games

Distill: non-traditional research artifacts.

Colah’s blog

Stanford Machine Learning Group

Snorkel: the system for programmatically building and managing training data.

Happy Git and GitHub for the useR (Jenny Bryan).

The Roots of Progress: their mission is to establish a new philosophy of progress for the 21st century.

ML Collective: supporting open collaboration in machine learning research

Tools for thought & Computational thinking

Essays, articles and blog posts about computational thinking and tools for thought!