Collection of useful/cool links/resources/stuff. If there’s anything you think I should check out, leave a comment below!
- VSCode Live Share, a real game-changer for pair programming.
- Typer a super underrated python CLI building tool. For simple applications (i.e. everything I write), you can’t get more succinct than this library.
- FastCore, useful python utilities, like typed dispatch, improved list interface, and more.
- Tensor Sensor, visualize tensor operations for easy debugging.
- Pylustrator, interactively create matplotlib figures.
- Zotero, reference manager.
- Vim Repl, a nice VIM plugin enabling cool things like this.
- Tensors Fitting Perfectly, catch shape errors at compile time in Swift for TensorFlow.
- FastDot, wrapper over pydot to make it more pythonic.
- Datacrunch, v100s for $0.45/hr???
- Chocolatey, windows package manager.
- Altair, declarative visualizations in Python. Makes interactive plots particularly easy.
- Finding a Good Learning Rate, 1 Cycle Learning Rate Policy for training neural networks.
- Scalene, the best python CPU/memory profiler out there.
- JupyterPlot, plots updated in real time in jupyter.
- Herbie, automatically find and fix floating point issues (stability).
- Einops, write more expressive tensor manipulations.
- How to read a paper, some nice advice from Andrew Ng on reading papers as well as finding a career in ML.
- Advanced Numpy, really really really good workshop by Juan Nunuz-Iglesias on advanced numpy, particularly stride tricks.
- Automatic Differentiation, nice talk by Matthew Johnson about how autodiff works, plus the basics of the autograd library.
- Intro to Nsight Systems. Nsight Systems is NVIDIA’s profiler for CPU/GPU programs. Here’s a nice blogpost that complements the talk.
- Is It Time to Rewrite the Operating System in Rust?, not only does it cover writing an OS in Rust, but also talks about the history of OSes (with details on why things are the way they are).
- Awkward Array: Manipulating JSON like Data with NumPy like Idioms (a nice library)
- Matplotlib 2.0, “new” features in matplotlib.
- Using Types Effectively, make your compiler do your work for you with static types.
- Python 3 Metaprogramming.
- Non-conforming C++, cool obscure C++ features.
- Lex Fridman’s Interview with Jeremy Howard.
- Andrei Alexandrescu “Speed Is Found In The Minds of People”, optimizing sorting medium sized arrays in C++ (really interesting and good takeaways).
- Advice for CS PhDs, lots of cool links for people aiming to go into or are currently in a CS PhD.
- The Sorcerer’s Apprentice Guide to Training LSTMs
- Animations in Matplotlib
- Docker Tips
- Deep Learning Papers Reading Roadmap, great guide for getting started with papers in many areas of deep learning.
- Data Analyst Interview Guide
- Performance Optimization in PyTorch.
- Gumbel Softmax Trick, differentiably sample from a categorical distribution.
- Which GPU for Deep Learning, a guide on choosing a GPU and some intuition about what specs to look for.
- PyTorch Internals, post on the implementation of PyTorch (particularly the C++ layer and autograd).
- Lavanya.ai’s ML Notes, covers linear algebra, stats, data wrangling and more. The basics section is golden.
- Python is Cool, guide on some lesser known Python features.
- Bash String Operations.
- Google Colab Tips
- How to Read a Paper
- Eval and Query to Improve Pandas Performance
- Viewing Matrices and Probability as Graphs
- Object Detection from 9 FPS to 650 FPS, accelerating deep learning inference.
- Every Complex DataFrame Manipulation, Explained & Visualized Intuitively
- Auto formatters for Python, comparison of the major formatters (autopep8, yapf, black) for python. I’m very particular about my code format, so without an auto-formatter, I waste a lot of time getting it right. My personal preference is yapf(google), but black is considered the “best”.
- Silvia Sellán posted/wrote some resources about choosing and applying to grad school.
- John Schulman’s opinionated guide to ML research
Resources I’ve helped put together: