Sam Who is the personal site of British programmer Sam Rose, dedicated to visual, interactive essays about software and computer science. As he explains on his homepage, each post takes one to three months to create and is written bottom-up — starting from the simplest possible example and building up. Every simulation can be paused, sped up, slowed down and reset, so you can poke at a system and watch how its behavior changes.

Screenshot of the "Load Balancing" essay on Sam Who: the text introduces the problem while an embedded simulation can be paused, accelerated and reset

At a Glance

Item Details (as of 2026-09-30)
URL samwho.dev
Type Personal visual, interactive technical essays
Cost Free
Account None required; an optional newsletter sends only a few emails per year
Language English only

Background

Sam Rose is a British programmer who now works as a developer educator at ngrok, where he publishes essays in the same style on the company blog (e.g. Prompt Caching, Quantization). He has discussed visual teaching on podcasts such as Hanselminutes (episode 953). The site has been online since around 2019, and the domain doubles as the brand — the homepage spells out "SAM WHO" in keyboard keycaps.

The Essays

Seven interactive essays are listed across the site's navigation and homepage:

  • Load Balancing: from a single load balancer distributing HTTP requests up to modern balancing algorithms;
  • Memory Allocation: how heap allocators split, merge and reclaim blocks;
  • Hashing: properties of hash functions and how collisions are handled;
  • Big O: comparing algorithmic growth rates visually;
  • Bloom Filters: probabilistic membership testing;
  • Reservoir Sampling: uniform sampling from a stream of unknown size;
  • Turing Machines: running a Turing machine with tape and states.

Screenshot of the Sam Who homepage: the SAM WHO logo spelled in keyboard keycaps, followed by the author's introduction and writing approach

Good For

  • Backend and infrastructure engineers building CS intuition;
  • Developers preparing for interviews who want to genuinely understand load balancing, hashing and friends;
  • Self-learners who prefer playing with a simulation before reading the theory.

Limitations

  • Slow output: one to three months per essay by the author's own account, so the catalog is small.
  • English only, and aimed at readers with some programming background.
  • Topics cluster around backend and systems concepts — no front-end, graphics or AI material.

References