Most cited
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 6,985 posts.
Can Apple read your iMessages?
About a year ago I wrote a short post urging Apple to publish the technical details of iMessage encryption. I’d love tell you that Apple saw my influential crypto blogging and fell all over t…
Error handling in Rust
Like most programming languages, Rust encourages the programmer to handle errors in a particular way. Generally speaking, error handling is divided into two broad categories: exceptions and return values. Rust opts for return values.
Archive.today: on the trail of mysterious guerrilla archivists of the Internet
Do you like reading articles in publications like Bloomberg, the Wall Street Journal or the Economist, but can’t afford to pay what can be hundreds of dollars a year in subscriptions? If so, …
This Is Water (2005)
David Foster Wallace's remarkable 2005 commencement speech, This is Water, is a timeless trove of wisdom for living a meaningful life. Here is a full transcript along with audio.
A log/event processing pipeline you can't have (2019)
Let me tell you about the still-not-defunct real-time log processing pipeline we built at my now-defunct last job. It handled logs from a la...
Filesystem error handling
We’re going to reproduce some results from papers on filesystem robustness that were written up roughly a decade ago : Prabhakaran et al. SOSP 05 paper , which injected errors below the filesystem and Gunawi et al. FAST 08 , which looked at how often filesystems failed to check return codes of functions that can…
Brave New Trusted Boot World
Posts and writings by Lennart Poettering
AWS EC2 Virtualization 2017: Including Nitro
AWS EC2 Virtualization 2017: explaining the different virtualization types, from emulation and binary substitution, paravirtualization and Xen, PV, HVM, and PVHVM modes, and the new Nitro hypervisor
Addition Font
Shaping When laying out text using a font file, the code points in the string are mapped one-to-one to glyphs inside the file. A glyph...
Futurist prediction methods and accuracy
I've been reading a lot of predictions from people who are looking to understand what problems humanity will face 10-50 years out (and sometimes longer) in order to work in areas that will be instrumental for the future and wondering how accurate these predictions of the future are. The timeframe of predictions that…
The Strict Aliasing Situation Is Pretty Bad
One thing that works well in practice in cases where you really don’t want to process single bytes at a time is to use a union for going from one type to another. Granted, writing one member of a union and reading from a different one also isn’t allowed per the standard, but every compiler I’ve come across allows it…
Speed memory access by arranging data to take advantage of CPU caching
We’ve been lied to. They keep showing us charts where CPU speed goes up and up every year as if Moore’s Law isn’t just a historical observation but some kind of divine right. Without lifting a finger, we software folks watch our programs magically accelerate just by virtue of new hardware.
The first serious infowar is now engaged
by John Perry Barlow Governments of the Industrial World, you weary giants of flesh and steel, I come from Cyberspace, the new home of Mind. On behalf of the future, I ask you of the past to leave us alone. You are not welcome among us. You have no sovereignty where we gather.We have no elected...
UTC, Tai, and Unix Time (2001)
TAI times are identified by year, month, day, hour, minute, and second. There are exactly 86400 TAI seconds in every TAI day. TAI days are labelled by the Gregorian calendar.
The power of two random choices
In many large-scale web services, multiple layers of stateless and stateful services are seperated by load balancers. Load balancing can be done with dedicated hardware, with dedicated software load balancers, using DNS trickery or through a load-balancing mechanism in the client. In large systems, the resources and…
Fix Terminals
I want terminal keypresses to Just Work. What do I mean Just Work? I mean programs in a simple orthogonal way, can determine the key that was pressed, and this model should easily map to the user's expectation.
Excess Automobile Deaths as a Result of 9/11
People commented about a point I made in a recent essay: In the months after 9/11, so many people chose to drive instead of fly that the resulting deaths dwarfed the deaths from the terrorist attack itself, because cars are much more dangerous than airplanes. Yes, that’s wrong. Where I said “months,” I should have…
So You Think You Have a Power Law (2007)
Regular readers who care about such things — I think there are about three of you — will recall that I have long had a thing about just how unsound many of the claims for the presence of power law distributions in real data are, especially those made by theoretical physicists, who, with some honorable exceptions…
The curious history of NovaMin toothpaste (2018)
I buy my toothpaste from overseas through eBay. Wonder why?
Fuck Your 90 Day Exercise Window (2016)
Written pieces, talks, and other bits by Zach Holman.
Fear of Macros
Practical Racket macros
A step by step backpropagation example (2015)
Background Backpropagation is a common method for training a neural network. There is no shortage of papers online that attempt to explain how backpropagation works, but few that include an example…