Sorting, hashing, and sketches on 370,103 words

Geeky word test drops a flashy result, but commenters instantly call foul

TLDR: The post’s big takeaway is that a compact counting method estimated 370,103 unique words with only 2.71% error, showing how search tools can stay fast without using much memory. But commenters immediately challenged the author’s timing-based claims, arguing the post dressed up obvious results as discoveries.

A deep-dive post about 370,103 English words somehow turned into a mini comment-section courtroom drama. On paper, the write-up is catnip for data nerds: the author cleans up a giant word list, times different ways of sorting it, tests several lookup methods, and shows off a clever counting trick called HyperLogLog, which estimates the number of unique words with just 2.71% error while using surprisingly little memory. In plain English: it’s about how computers keep searches and lookups fast without hogging space.

But the real fireworks came when readers zeroed in on the author’s performance claims. The strongest reaction? A skeptical “nice stopwatch, but that’s not proof” energy. One commenter, atiedebee, basically accused the post of acting like it had discovered the behavior of these methods by timing them a few times, instead of starting from known theory and then confirming it. Translation for non-math people: critics thought the article was being a little too dramatic about “finding” results everybody already expects.

That tension gave the whole thing a deliciously nerdy reality-show vibe: one side sees a practical, educational experiment; the other sees a lab coat thrown over obvious conclusions. Even without a giant pile of comments, the mood is clear — readers love the big word-number flex, but they’re absolutely ready to drag any whiff of hand-wavy science. The joke writes itself: the words got sorted, and so did the author.

Key Points

  • The article analyzes a cleaned dataset of 370,103 unique English words derived from the dwyl/english-words repository.
  • It says the dataset originally included duplicates and two missing values, and that cleaned word lengths are concentrated between 3 and 10 characters with a long tail beyond 15.
  • The post compares algorithmic cost using timing and memory measurements across sorting, hashing, and probabilistic sketching methods.
  • Measured examples include Python built-in sort timings on 50,000, 100,000, and 200,000 words, plus append and front-insert timings for lists.
  • A highlighted result is that HyperLogLog estimated the vocabulary size with 2.71% error using 4,096 registers.

Hottest takes

"Excuse me?" — atiedebee
"pretends to discover" — atiedebee
"the assumptions about the time complexity" — atiedebee
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.