oddbit.com: one of these things is not like the other.
Source code on github
Blog