New
The latest blog posts to take off on Hacker News. 2,391 posts.
A Formula for the Number of Days in Each Month
Recently, after being awake for longer than I should have, I started thinking about methods of remembering the number of days in each month of the year. There is a rhyme for it, and a way to count on your knuckles, but these didn’t satisfy me. I wondered if there was a mathematical formula for the problem, and upon…
Zero Knowledge Proofs: An illustrated primer
One of the best things about modern cryptography is the beautiful terminology. You could start any number of punk bands (or Tumblrs) named after cryptography terms like ‘hard-core predicate&#…
How medieval astronomers made trig tables
Clever tricks used by medieval astronomers to tabulate sines at every degree, before calculators and before calculus.
Gray Code
What are Gray codes, and why are they so useful?
The Generalist – On Alexander Grothendieck
I never met Alexander Grothendieck. I was never in the same room with him. I never even saw him from a distance. But whenever I think about math — which is to say, pretty much every day ̵…
How I created two images with the same MD5 hash
I posted the following images the other day which although looking totally different have exactly the same MD5 hash ( e06723d4961a0a3f950e...
Planjure: A* and Dijkstra's in Om
I wrote Planjure to learn ClojureScript and Om. It’s a fun little program. You paint islands on a canvas and run path-planning algorithms to find the optimal path for your ship to traverse from start to finish. Sailing across blue ocean is faster than hiking through green islands. The three algorithms implemented are…
Rolling Shutters
I remember seeing once the following photo from Flickr, and having my brain melt slightly from trying to figure out what went wrong: The issue was the propeller was rotating as the camera detector 'read out', i.e. there was some motion during the exposure of the camera. This is an interesting thing to think about…
Making of “Introduction to A*”
(Warning: these notes are rough – the main page is here and these are some notes I wrote for a few colleagues and then I kept adding to it until it became a longer page)
Intel Underestimates Error Bounds by 1.3 Quintillion
Intel’s manuals for their x86/x64 processor clearly state that the fsin instruction (calculating the trigonometric sine) has a maximum error, in round-to-nearest mode, of one unit in the last place…
On the Computational Complexity of MapReduce
I recently wrapped up a fun paper with my coauthors Ben Fish, Adam Lelkes, Lev Reyzin, and Gyorgy Turan in which we analyzed the computational complexity of a model of the popular MapReduce framework. Check out the preprint on the arXiv. Update: this paper is now published in the proceedings of DISC2015. As usual I’ll…
Mining Bitcoin with pencil and paper: 0.67 hashes per day
This article is now available in Japanese: 紙と鉛筆でビットコインをマイニング:1日に0.67ハッシュ and Russian: Майним Bitcoin с помощью бумаги и ручки . I decided...
Quantum mechanics as a generalization of probability (2007)
There are two ways to teach quantum mechanics. The first way -- which for most physicists today is still the only way -- follows the historical order in which the ideas were discovered. So, you start with classical mechanics and electrodynamics, solving lots of grueling differential equations at every step. Then you…
The Traveling Salesman with Simulated Annealing, R, and Shiny
I built an interactive Shiny application that uses simulated annealing to solve the famous traveling salesman problem. You can play around with it to create and solve your own tours at the bottom of …
What every computer programmer should know about floating point, part 1
Author’s note: this article used to be called “What Every ComputerProgrammer Should Know About Floating Point, part 1”. Some peoplenoted that this was perh...
Correlation is usually not causation. But why not?
Correlations are oft interpreted as evidence for causation; this is oft falsified; do causal graphs explain why this is so common, because the number of possible indirect paths greatly exceeds the direct paths necessary for useful manipulation?
Gridlock vs. Bottlenecks: A visual explanation
"Emails show [Chris Cristie]'s aides did plan bridge gridlock," says Salon . To a transportation engineer, the aides are innocent: bridges can't have gridlock. While we often say "gridlock" to mean "bad traffic," it has a technical meaning.
How to walk through walls using the 4th dimension [video]
An explanation of how walking through walls would actually look like if you could move in 4D.
Helmhurts: Placing a WiFi router with the Helmholtz equation
A few posts back I was concerned with optimising the WiFi reception in my flat, and I chose a simple method for calculating the distribution of electromagnetic intensity. I casually mentioned that I really should be doing things more rigorously by solving the Helmholtz equation, but then didn't. Well, spurred on by a…