When I began my career in programming I remember reading Jeff Dean's "Latency Numbers Every Programmer Should Know" [1], and getting inspired. Alas, it's been over a decade, and I never fully internalized all the numbers.
Until recently. I discovered Simon Eskildsen's talk [2] and github repo [3] on programmer napkin math. I liked his reasoning, and decided to actually internalize the numbers now.
So I made baserates.dev.
It's a spaced repetition program that teaches you the napkin math from Simon, enhanced with a few things from Jeff Dean's list. The main changes: I included CPU instructions, like L1 Cache reads. I also included some nooby context, like how to pronounce the character μ, and a reminder on what is bigger: nano seconds, or micro seconds.
The app automatically saves your progress, and doesn't require auth. Most of the logic is vibe coded: I fed Claude all the links. I use InstantDB [^4] for the backend, mainly to support guest auth and saving progress. Most of my time spent on the project was just going through and making sure the numbers were right. [^5]
Hope you enjoy it!
[1]: [https://gist.github.com/jboner/2841832](https://gist.github.com/jboner/2841832)
[2]: [https://www.youtube.com/watch?v=IxkSlnrRFqc](https://www.youtube.com/watch?v=IxkSlnrRFqc)
[3]: [https://github.com/sirupsen/napkin-math](https://github.com/sirupsen/napkin-math)
[4]: Disclaimer: I am the founder of InstantDB
[5]: One fun story: I got claude to spin up a bunch of machines on Amazon, to confirm latency numbers for same AZ, cross AZ, cross region requests.
Comments URL: [https://news.ycombinator.com/item?id=48624232](https://news.ycombinator.com/item?id=48624232)
Points: 1