Reading / Videos
Reading / Videos
This page is intentionally link-heavy: it’s meant to be your “syllabus”.
Classes / OOP / Python data model
- Python docs: Data model (
__dunder__methods): docs.python.org/3/reference/datamodel.html - Python docs:
dataclasses: docs.python.org/3/library/dataclasses.html - Python docs:
typing(Protocols, generics): docs.python.org/3/library/typing.html - Raymond Hettinger (excellent talks; search the titles):
- “Transforming Code into Beautiful, Idiomatic Python”
- “Beyond PEP 8”
NumPy
- NumPy: Quickstart tutorial: numpy.org/doc/stable/user/quickstart.html
- NumPy: Broadcasting: numpy.org/doc/stable/user/basics.broadcasting.html
- NumPy:
einsum: numpy.org/doc/stable/reference/generated/numpy.einsum.html - MIT 18.06 (Linear Algebra) video lectures (good companion for linalg parts): ocw.mit.edu/courses/18-06-linear-algebra-spring-2010/
PyTorch (minimal)
- PyTorch: Tensors: pytorch.org/docs/stable/tensors.html
- PyTorch: Autograd: pytorch.org/docs/stable/autograd.html
- PyTorch:
nn.Module: pytorch.org/docs/stable/generated/torch.nn.Module.html
Setup notes
- Recommended: create a fresh env with
python -m venv .venvand installnumpyandtorch. - If you can’t install
torcheasily on your machine, you can still do the classes + NumPy parts.