How Shor's Algorithm works (2007)
I’ve been talking a lot recently about how quantum algorithms don’t work. But last week JR Minkel, an editor at Scientific American, asked me to write a brief essay about how quantum al…
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 437 posts.
I’ve been talking a lot recently about how quantum algorithms don’t work. But last week JR Minkel, an editor at Scientific American, asked me to write a brief essay about how quantum al…
This time we'll focus on Linux's select(2) successor - the epoll(2) I/O multiplexing syscall.
Which is faster, keyboard or mouse? A large number of programmers believe that the keyboard is faster for all (programming-related) tasks. However, there are a few widely cited webpages on AskTog which claim that Apple studies show that using the mouse is faster than using the keyboard for everything and that people…
To type or not to type: quantifying detectable bugs in JavaScript Gao et al., ICSE 2017 This is a terrific piece of work with immediate practical applications for many project teams. Is it worth th…
My twitter feed has recently been filled with discussions about the following program #include <cstdlib> typedef int (*Function)(); s...
Vulnerability in Chrome, Firefox, and Opera makes users susceptible to phishing with Unicode domains
CHAPTER from SKIN IN THE GAME
Years ago, while working on an explanation of the Fourier Transform, I found this diagram: Most ideas aren't inherently confusing, but their technical…
There are lots of people and places that create and collect algorithms of all types ( here are a few WWW sites). Unfortunately, in building systems hardware and software, we in The Aggregate often have found it necessary to do relatively obscure low-level things very efficiently. Many of the tricks we've devised or…
[Warning: non-historian arguing about history, which is always dangerous and sometimes awful. I will say in my defense that I’m drawing off the work of plenty of good historians like Bryan Wa…
The more I read about cryonics—i.e. freezing yourself after death—the more I realized it's something we should all be talking about.
Something important is almost never mentioned in all the literature about programming and software development, and as a result we sometimes misunderstand each other. You’re a software develo…
Have you heard of the Bitcoin Lightning Network? It is a proposal that claims that:
When you’re trying to get people to switch from a competitor to your product, you need to understand barriers to entry, and you need to understand them a lot better than you think, or people …
“People have completely forgotten that in 1972 we had over nineteen hundred domestic bombings in the United States.” — Max Noel, FBI (ret.) Recently, I had my head torn off by a b…
[This post has mostly been replaced/supplanted with a more thorough analysis in Contra Grant On Exaggerated Differences] I. One idea that kept coming up in the comments to the thread on signal-boos…
What is slack doing? The process was in the background when this happened. I wasn't even interacting with it - I was in a meeting. I only noticed because my laptop fans were whurring when I got back. Restarting slack seemed to fix it for now. But that's not abnormal
A new series that reviews 21 different microcontrollers — all less than $1 — to help familiarize you with all the major ecosystems out there.
I love the idea of USB-C: one port and one cable that can replace all other ports and cables. It sounds so simple, straightforward, and unified.
Back in January, I used an old Thinkpad while my 12” Macbook was being repaired. I found myself really enjoying some aspects of it. This nudged me down a path that ended with me modding a frankenpad…
You know how sometimes if you mistype a filename in Bash, it corrects your spelling and runs the command anyway?* Such as when changing directory, or opening a file. I have an idea: Suicide Linux. Any time - any time - you type any remotely incorrect command, the interpreter cr...
Building resilient services by identifying foreign state mutations and grouping local changes into restartable atomic phases so that every request can be driven to completion.
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…
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