Structure and Interpretation of Computer Programs is full of interesting
footnotes. Here's a good one about the Fermat test for prime numbers:

Numbers that fool the Fermat test are called *Carmichael numbers*, and
little is known about them other than that they are extremely rare. There
255 Carmichael below 100,000,000. The smallest few are 561, 1105, 1729,
2465, 2821 and 6601. In testing primality of very large numbers chosen at
random, the chance of stumbling upon a value that fools the Fermat test is
less than the chance that cosmic radiation will cause the computer to make
an error in carrying out a correct algorithm. Considering an algorithm to
be inadequate for the first reason but not for the second illustrates the
difference between mathematics and engineering.

## Hello

I'm David Winterbottom, a minimalist hacker living in London.

I'm a Technical Director of Tangent Snowball, a digital
agency. I program mainly in Python but have strong interests in all dynamic and functional languages.

I spend most of my free time hacking. I run commandlinefu.com and am the author of
the e-commerce framework django-oscar amongst other things.

I used to be a mathematician; I have a PhD in Mathematics from the
University of Nottingham and an associated interest in cryptic crosswords,
chess and playing devil's advocate.

If you've read this far, you should probably follow me on Twitter:

More »