There’s a new site, Debuggers, that is sort of reminiscent of The Setup. The idea is that every week (on Tuesdays) they publish a short questionnaire with a programmer asking about his or her most interesting debugging problem.
This week Russ Cox describes one of his most interesting bugs. As regular readers know, I admire Cox and his work a lot and always learn something new from his writings. Cox’s bug involves threads and locking, surely one of the most fertile grounds for bugs. What’s interesting is the way that assumptions about the locking mechanisms and manual memory management conspire to make a bug that was really hard to understand.
I’ll let Cox tell his story and only urge you to give it a read. Like me, you’ll very likely learn something.