Most cited
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 1,231 posts.
Performance Improvements in .NET 5
Explore many performance improvements, big and small, that have gone into the .NET 5 runtime and core libraries to make apps and services leaner and faster.
"I Contribute to the Windows Kernel. We Are Slower" (2013)
I was explaining on Hacker News why Windows fell behind Linux in terms of operating system kernel performance and innovation. And out of nowhere an anonymous...
Floating-Point Determinism (2013)
Is IEEE floating-point math deterministic? Will you always get the same results from the same inputs? The answer is an unequivocal “yes”. Unfortunately the answer is also an unequivocal “no”. I’m a…
Golang data races to break memory safety
Go is becoming more and more popular as a programming language and getting more scrutiny from a security point of view. You might remember m...
Why isn't my time zone highlighted on the world map?
In the original release of Windows 95, you could change your time zone by clicking on the map, and the time zone you selected would highlight. Similarly,
Test iOS and Android Audio Latency with Superpowered Latency Test App
iOS and Android Audio Latency Test App with round-trip audio latency data for Apple, Samsung Galaxy, Xiaomi, LG, HTC, Nexus, Motorola, Sony, etc. devices.
Smashing the Stack for Fun and Profit by Aleph One
An excellent (if a bit dated) article/tutorial on exploiting buffer overflow vulnerabilities. It was written by Aleph One for Phrack 49.
Easy Automated Snapshot-Style Backups with Rsync
How to make easy, automated snapshot-style backups with rsync and UNIX
Cloudflare outage on November 18, 2025 post mortem
Cloudflare suffered a service outage on November 18, 2025. The outage was triggered by a bug in generation logic for a Bot Management feature file causing many Cloudflare services to be affected.
24-core CPU and I can’t move my mouse
This story begins, as they so often do, when I noticed that my machine was behaving poorly. My Windows 10 work machine has 24 cores (48 hyper-threads) and they were 50% idle. It has 64 GB of RAM an…
Firefox’s new streaming and tiering compiler
People call WebAssembly a game changer because it makes it possible to run code on the web faster. Some speedups are already present, and some are yet to come. With ...
Local-first software (2019)
A new generation of collaborative software that allows users to retain ownership of their data.
Revised and much faster, run your own high-end cloud gaming service on EC2
Playing Witcher 3, a GPU-intensive game on a 2015 fanless Macbook
Systemd, ten years later: a historical and technical retrospective
10 years ago, systemd was announced and swiftly rose to become one of the most persistently controversial and polarizing pieces of software in recent history, and especially in the GNU/Linux world. The quality and nature of debate has not improved in the least from the major flame wars around 2012-2014, and systemd…
Popcount CPU instruction
Most CPU architectures in use today have an instruction called popcount , short for “population count”. Here’s what it does: it counts the number of set bits in a machine word. For example (assuming 8-bit words for simplicity), popcount(00100110) is 3 and popcount(01100000) is 2 .
A history of branch prediction
This is a pseudo-transcript for a talk on branch prediction given at Two Sigma on 8/22/2017 to kick off "localhost", a talk series organized by RC .
Please stop calling databases CP or AP
This blog post has been translated into Russian , Japanese , Chinese , and Chinese again . For more detail on problems with CAP, and a proposal for an alternative, please see my paper A Critique of the CAP Theorem .
You cannot have exactly-once delivery (2015)
I’m often surprised that people continually have fundamental misconceptions about how distributed systems behave. I myself shared many of these misconceptions, so I try not to demean or dismiss but rather educate and enlighten, hopefully while sounding less preachy than that just did. I continue to learn only by…
Building an OpenBSD Router
The Ultimate OpenBSD Router
Negative Result: Reading Kernel Memory from User Mode
I were going to write an introduction about how important negative results can be. I didn’t. I assume you can figure out for yourself why that is and if not you got all the more reason to read this blog post. If you think it’s trivial why my result is negative, you definitely need to read the blog post.
A fast alternative to the modulo reduction (2016)
Suppose you want to pick an integer at random in a set of N elements. Your computer has functions to generate random 32-bit integers, how do you transform such numbers into indexes no larger than N? Suppose you have a hash table with a capacity N. Again, you need to transform your hash values (typically 32-bit ……
OpenBSD 5.5 Released
OpenBSD 5.5
To ECC or Not to ECC
On one of my visits to the Computer History Museum – and by the way this is an absolute must-visit place if you are ever in the San Francisco bay area – I saw an early Google server rack circa 1999 in the exhibits. Not too fancy, right? Maybe even… a
Asynchronous Everything (2015)
Joe Duffy's Blog | Adventures in the high-tech underbelly