Design patterns

https://web.archive.org/web/20080327040226/http://www.codinghorror.com:80/blog/archives/000899.html