>this is a double-edged sword. The developer has enough flexibility to do really cool things, and equally the flexibility to do really stupid things