HN Hall of Fame Weekly email

There are only four billion floats, so test them all (2014)

randomascii.wordpress.com Essays & writing Essays & articles Software engineering Candidate
Screenshot of randomascii.wordpress.com captured 2026-07-20
Page preview · captured 2026-07-20

Resurfaced independently across 3 calendar years, with breakout response in 3 of them.

submissions
3
submitters
3
observed span
2017–2023
peak thread · 175 comments
501 pts
latest 20+ return · 2023-02-09
252 pts

Submission timeline

2007–2026

One slot for every year since HN launched. Height is that year's peak points; orange marks a 100+ point or 50+ comment breakout. Select a bar to open its strongest thread.

First comments on top threads

HN comment order

Many years ago now we built something that used a 60-bit truncated hash of URIs. So that's far too small to be comfortable that you won't run into collisions, but it's big enough that for modest sizes (hundreds of millions up to billions) a collision is unlikely. So you can have a slow path for the collision case, so long as that slow path is correct. For unit testing we needed at least one collision so we could see that…

On the topic of "test them all", I wrote this in my paper about error bounds and worst cases for complex multiplication (http://www.daemonology.net/papers/complexmultiply.pdf): [For finding worst-case inputs] the approach taken was to perform an exhaustive search, taking several hours on the second author’s laptop, of IEEE single-precision inputs, using only a few arguments from Theorem 1 to prune the search. Even though (2^32)^4 was far too large for it to be tractable to test all 4-tuples of single-precision…

Not often you can employ exhaustive testing, but it's useful in some cases. I did a project in college for a VLSI minor where we implemented a 16bit multiplier - after we got the chips back we were supposed to do scan testing, but I just wrote up a little program in an fpga, wired up my chip to test, and swept all the possible inputs verifying the output. I think I could only run this at 10MHz, and you…

The first top-level comment from each of the four biggest threads, in HN’s own order. Excerpts are shortened; open a comment for full context.

Breakout years
3

100+ points or 50+ comments

Total points
1082

reference only — not used in Hall rules or ranking

Total comments
290

reference only — not used in Hall rules or ranking

Every submission

DateTitle as submittedByPointsComments
2017-09-14There Are Only Four Billion Floats, So Test Them All (2014)First breakouttosh32950
2020-10-11There are only four billion floats, so test them all (2014)Best threadtape_measure501175
2023-02-09There Are Only Four Billion Floats–So Test Them All (2014)Latest 20+ point returnalbrewer25265