browse/
37 results
infrastructure/rolling-deploys-how-a-website-updates-without-going-offline.md
Rolling deploys: how a website updates without going offline
How does a busy website switch to a new version without going offline? Not by replacing everything at once. A rolling deploy updates one…
computer-science/binary-search-how-to-find-one-number-in-a-million-with-20-guesses.md
Binary search: how to find one number in a million with 20 guesses
Guessing a number between 1 and 1,000,000 sounds like it could take a million tries. With binary search it takes at most 20. Step through a…
tools/path-why-a-terminal-says-command-not-found-for-a-program-you-installed.md
PATH: why a terminal says command not found for a program you installed
You installed a tool, but the terminal says `command not found`, or it runs an older version. The cause is almost always `PATH`: a short…
networks/cidr-and-subnets-what-the-24-in-192-168-1-0-24-means.md
CIDR and subnets: what the /24 in 192.168.1.0/24 means
What does the `/24` in `192.168.1.0/24` mean? It counts how many of an IPv4 address's 32 bits name the network, and how many are left to…
security/caesar-cipher-why-25-guesses-break-it-and-what-real-encryption-does-in.md
Caesar cipher: why 25 guesses break it, and what real encryption does instead
The Caesar cipher swaps each letter for one a fixed distance along the alphabet. Slide the key yourself, then play the attacker and break…
computer-science/big-o-how-to-tell-if-your-code-will-survive-1-000-times-more-data.md
Big O: how to tell if your code will survive 1,000 times more data
Your code works on 10 items, then crawls on 10,000. Big O is the short way programmers describe how the number of steps grows as the input…
computers/time-slices-how-one-cpu-core-runs-many-programs-at-once.md
Time slices: how one CPU core runs many programs at once
Your computer runs far more programs than it has processor cores. How? The operating system's scheduler gives each program a short time…
languages/go-slices-why-appending-to-a-copy-can-change-the-original.md
Go slices: why appending to a copy can change the original
Change a copy of a Go slice and sometimes the original changes too. The reason is that a slice is only a small window onto an array, with a…
security/two-factor-codes-how-your-phone-and-a-website-agree-on-6-digits.md
Two-factor codes: how your phone and a website agree on 6 digits
Your phone shows a 6-digit code that changes every 30 seconds, yet it never talks to the website. How do both sides agree on the number?…
computer-science/recursion-why-fib-30-makes-2-7-million-calls-and-how-a-notebook-fixes.md
Recursion: why fib(30) makes 2.7 million calls, and how a notebook fixes it
A function that calls itself sounds like an endless loop, but it works when every call gets a smaller problem and one case is simple enough…
databases/database-transactions-why-moving-money-is-all-or-nothing.md
Database transactions: why moving money is all or nothing
Paying someone is really two changes in a database: take money from one account, add it to another. If the power dies between them, money…
web/why-is-my-css-ignored-specificity-scored-with-three-numbers.md
Why is my CSS ignored? Specificity, scored with three numbers
You write `p { color: red; }`, reload, and the text stays blue. The rule is fine: two rules are competing, and yours lost the contest. The…