https://gwern.net/doc/cs/2005-09-30-smith-whyihateframeworks...
Note that one of the comments is from me :-)