At work, I’ve recently been reading through a collection of papers on software development. Pretty boring, largely, until I got to the last article: “The Errors of TeX”, by Donald Knuth. Which was great! It turns out that Knuth kept a log of every single change he made to TeX from the beginning of debugging the first version to the present; he’s written a very engaging article about it. The article itself apparently isn’t available online (sigh), but at least the list of errata is; the current version is here. It’s an amazing view into the mind of one of the most important of computer scientists (and one of the most amazing programmers we’ve ever seen, as far as I can tell: I can only dream of writing and debugging code as quickly as he talks about here), into one of the most important pieces of software ever.
I mentioned this to a friend over lunch; his comment was “why don’t people talk about TeX more in discussions of open source software?” Which is a very good point; why don’t people? TeX is out of vogue right now, perhaps, but it was certainly prominent enough over time. And it’s unique in a very important way: it’s the only piece of software that I know of with essentially no remaining bugs. (Looking at the list, there are probably a few left, but he’s only made 4 fixes in the last decade.) Shouldn’t we spend more time studying this program, reading through the code, learning how Knuth wrote it, seeing if we can adapt those methods to our current work?
There are no revisions for this post.