Most cited

Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 161 posts.

Software Engineering
2016
1

How to Write a Spelling Corrector

I figured they, and others, could benefit from an explanation. The full details of an industrial-strength spell corrector are quite complex (you can read a little about it here or here ). But I figured that in the course of a transcontinental plane ride I could write and explain a toy spelling corrector that achieves…

3

Parsing JSON is a Minefield

[2016-10-26] First version of the article [2016-10-28] Presentation at Soft-Shake Conference, Geneva ( slides ) [2016-11-01] Article and comments in The Register [2017-11-16] Presentation at Black Alps Security Conference, Yverdon ( slides ) [2018-03-09] Presentation at Toulouse Hacking Conference ( slides )…

17

How to do distributed locking

As part of the research for my book , I came across an algorithm called Redlock on the Redis website. The algorithm claims to implement fault-tolerant distributed locks (or rather, leases [1]) on top of Redis, and the page asks for feedback from people who are into distributed systems. The algorithm instinctively set…

20

Version SAT

The package version selection problem is to find a set of dependencies that can be used to build a top-level package P that is complete (all dependencies satisfied) and compatible (no two incompatible packages are selected). There may be no such set, because of the diamond dependency problem: perhaps A needs B and C…

29

Subresource Integrity Addressable Caching

A small number of popular JavaScript frameworks and libraries account for a substantial portion of the network, battery, and time budgets of users of the contemporary Web. Many applications include these libraries even if they only use a small portion of the functionality they provide. Large improvements seem possible…

30

How to C in 2016

This is a draft I wrote in early 2015 and never got around to publishing. Here’s the mostly unpolished version because it wasn’t doing anybody any good sitting in my drafts folder. The simplest change was updating year 2015 to 2016 at publication time.