www.donaldharper.com/posts/2009/02/10/odds-and-ends-1.md