http://blog.tordeu.com/?p=112
Anonymous
Separate policy from mechanism, separate interfaces from engines.