Reading/Learning
Some resources I’ve used to learn/practice and git good.
Mathematics
- A programmers introduction to mathematics: Goes through basics like set theory, through single/multi variate calculus, linear algebra, optimization, and group theory.
System Level Programming (OS/Compiler)
- Crafting interpreters: The best starting point for learning about programming languages, lexers, parsers, syntactic analysis, and the basics of virtual machines.
- How to Optimize a CUDA Matmul Kernel
- Algorithmica: Algorithms for Modern Hardware: Very interested in seeing where this series will go, but lots of seriously useful information on computer architecture/optimization.
Machine Learning
-
The Hundred-Page Machine Learning Book: Basically introduces the most common algorithms in machine learning, the basic notation and mathematics of machine learning, and a fairly good introduction to what neural networks and deep learning.
-
Neural Networks: Zero to Hero: Build a neural network from scratch without automatic differentiation or fancy learning algorithms and then build and train GPT-2 using pytorch.