Top all-time · #916
Probably Dance
Personal blog · probablydance.comprogramminggames
Probably Dance is a personal blog at probablydance.com about programming and games. Since 2013, 74 different Hacker News readers have linked it 125 times, most often “Fibonacci Hashing: The Optimization That the World Forgot”. It is still writing: the last post was on 2026-09-23, and you can follow it by feed.
I can program and like games
Most-linked posts?
- Fibonacci Hashing: The Optimization That the World Forgot10 people · 10 mentions · first linked 2018-06-16
- I Wrote My Fastest Hashtable8 people · 8 mentions · first linked 2017-02-27
- Measuring mutexes, spinlocks and how bad the Linux scheduler is7 people · 7 mentions · first linked 2019-12-31
- A new fast hash table in response to Google’s new fast hash table6 people · 6 mentions · first linked 2018-05-29
- On modern hardware the min-max heap beats a binary heap5 people · 6 mentions · first linked 2020-09-01
- Finding the “second bug” in glibc’s condition variable5 people · 5 mentions · first linked 2022-09-18
- Writing a Faster Sorting Algorithm4 people · 4 mentions · first linked 2016-12-28
- Programmers Spend Their Time – Probably Dance4 people · 4 mentions · first linked 2026-02-11
- Using TLA+ in the Real World to Understand a Glibc Bug4 people · 4 mentions · first linked 2020-11-01
- Functional programming is not popular because it is weird (2016)4 people · 4 mentions · first linked 2019-10-17
What Hacker News says?
This sounded promising but then I saw a performance benchmark [1] that was done on a pentium(!) with a very suboptimal hash table design compared to [2] and [3]. The Judy site itself [4] is full of phrases like "may be out of date", when the entire site was last updated in 2004. If it was already out of date in 2004... It seems that Judy arrays are just kind of a forgotten datastructure, and it doesn't look promisin…
Comment linking /2018/05/28/a-new-fast-hash-table-in-response-to-googles-new-fast-hash-table/
on “Ask HN: What are some cool but obscure data structures you know about?”Submitted Fibonacci Hashing: The Optimization That the World Forgot as a story · 405 points
HN discussionFor a different, perhaps more practical take on small pointers in hash tables, you might find this interesting: https://probablydance.com/2018/05/28/a-new-fast-hash-table-i... with contemporaneous discussion at https://news.ycombinator.com/item?id=17176713
Comment linking /2018/05/28/a-new-fast-hash-table-in-response-to-googles-new-fast-hash-table/
on “Undergraduate shows that searches within hash tables can be much faster”Submitted A new fast hash table in response to Google’s new fast hash table as a story · 390 points
HN discussionPeople do that, and find very tricky bugs. One person did it by line-by-line translating C code into TLA+, another by representing the state machine in Coq and checking for predicates validating it in the source. But I don't think a visual representation of the state machine would have diagnosed the bugs the formal checkers did. https://probablydance.com/2020/10/31/using-tla-in-the-real-w... https://probablydance.co…
Comment linking /2022/09/17/finding-the-second-bug-in-glibcs-condition-variable/
on “We need visual programming. No, not like that”Submitted I Wrote My Fastest Hashtable as a story · 380 points
HN discussionThe one I’ve discovered most recently is Fibonacci hashing. https://probablydance.com/2018/06/16/fibonacci-hashing-the-o...
Comment linking /2018/06/16/fibonacci-hashing-the-optimization-that-the-world-forgot-or-a-better-alternative-to-integer-modulo/
on “Ask HN: What's your favorite elegant/beautiful algorithm?”Submitted Measuring mutexes, spinlocks and how bad the Linux scheduler is as a story · 331 points
HN discussionMore than just a handful of percent[1], but ok [1] https://probablydance.com/2017/02/26/i-wrote-the-fastest-has...
Comment linking /2017/02/26/i-wrote-the-fastest-hashtable/
on “The hunt for the missing data type”Submitted Lessons Learned from Shenzhen I/O as a story · 319 points
HN discussion> One interesting thing you'll notice about IEEE754 is that the values sort naturally if you interpret them as sign-magnitude integers With a few bit-twiddling tricks you can even make them radix-sortable, as explained by Malte Skarupke: > Michael Herf has also discovered a good way to generalize this to floating point numbers: Reinterpret cast the float to a uint32, then flip every bit if the float was negative, bu…
Comment linking /2016/12/27/i-wrote-a-faster-sorting-algorithm/
on “Float Toy”Submitted Why babies cry in the first three months, how to tell them apart, and what to do as a story · 305 points
HN discussionhttps://www.realworldtech.com/forum/?threadid=189711 is the original post (what you linked). The quote is from https://probablydance.com/2019/12/30/measuring-mutexes-spinl...
Comment linking /2019/12/30/measuring-mutexes-spinlocks-and-how-bad-the-linux-scheduler-really-is/
on “No nuances, just buggy code (was: related to Spinlock implementation)”Submitted Finding the “second bug” in glibc’s condition variable as a story · 290 points
HN discussionLooking at the performance graphs of different hash table implementations is the best way to invalidate the idea of "constant time": https://probablydance.com/2018/05/28/a-new-fast-hash-table-i... HN submission with related comments: https://news.ycombinator.com/item?id=17177798
Comment linking /2018/05/28/a-new-fast-hash-table-in-response-to-googles-new-fast-hash-table/
on “Why databases use ordered indexes but programming uses hash tables”Submitted On modern hardware the min-max heap beats a binary heap as a story · 244 points
HN discussionQuaternions, in three words: "Rotations in 3D". I like this explanation: https://probablydance.com/2017/08/05/intuitive-quaternions/
Comment linking /2017/08/05/intuitive-quaternions/
on “The Octonion Math That Could Underpin Physics”Submitted Neural Networks Are Impressively Good at Compression as a story · 244 points
HN discussionSource on that claim? Here's a comment chain where the author admits that his library is noncompliant: https://probablydance.com/2017/02/26/i-wrote-the-fastest-has... . Also note the complete lack of a standards test suite. This library uses Robin Hood hashing for speed. As my original link explains, standard implementations use chained buckets so that users can cache lookups and to have better worst-case performanc…
Comment linking /2017/02/26/i-wrote-the-fastest-hashtable/
on “Fibonacci Hashing: The Optimization That the World Forgot”Submitted Functional programming is not popular because it is weird (2016) as a story · 223 points
HN discussionThis is pretty much the conclusion in this game related post on spinlocks: https://probablydance.com/2019/12/30/measuring-mutexes-spinl...
Comment linking /2019/12/30/measuring-mutexes-spinlocks-and-how-bad-the-linux-scheduler-really-is/
on “Mutexes are faster than Spinlocks”Submitted Looking for Voter Fraud (In Old Elections) with Data Visualization as a story · 206 points
HN discussionA more common method of implementing this that avoids setjmp and longjmp is to code a little assembly to do the stack switch. This is typically faster and easier to port, see: https://probablydance.com/2013/02/20/handmade-coroutines-for...
Comment linking /2013/02/20/handmade-coroutines-for-windows/
on “Implementing simple cooperative threads in C”Submitted Writing a Faster Sorting Algorithm as a story · 201 points
HN discussionIt should be obvoius that hash table lookups are above O(1) as long as collisions exist. Tweaking the load factor can reduce the probability of collisions, but that's merely a constant factor to the lookup complexity. As to whether O(log(n)) is a good approximation for the average, we can certainly discuss that. It depends a lot on the algorithm, but https://probablydance.com/2017/02/26/i-wrote-the-fastest-has... sh…
Comment linking /2017/02/26/i-wrote-the-fastest-hashtable/
on “Perl 11”Submitted Revisiting Knuth's “Premature Optimization” Paper as a story · 194 points
HN discussionI would venture a guess to say that what makes FP or declarative style programming/thinking feel weird is not any great context like the nature of the human brain but rather the lesser one that usually people try to learn it after already having had learned imperative style stuff. The functionally written recipe from https://probablydance.com/2016/02/27/functional-programming-... may be less helpful if I need to kno…
Comment linking /2016/02/27/functional-programming-is-not-popular-because-it-is-weird/
on “Why Isn't Functional Programming the Norm? [video]”Submitted Why Does Integer Addition Approximate Float Multiplication? as a story · 182 points
HN discussionI think you can do better than calling something you disagree with “rubbish” because your team didn’t have problems with it. Here’s an example of people finding functional programming unnatural, maybe you can leverage your experience to explain why he is wrong: Functional Programming Is Not Popular Because It Is Weird https://probablydance.com/2016/02/27/functional-programming-...
Comment linking /2016/02/27/functional-programming-is-not-popular-because-it-is-weird/
on “Why Isn't Functional Programming the Norm? [video]”Submitted Using TLA+ in the Real World to Understand a Glibc Bug as a story · 166 points
HN discussion