Configuration Strategy

It's nice to have a configuration strategy in place where you can cascade overrides at different levels, where options specified in the lower level are overridden by the ones closer to the user.

In JavaScript, I use gconfig. In PHP pconfig. In Python, the built in module it's fantastic.

Configuration overlaps pretty nicely with DI/IOC, in fact, having an advanced configuration strategy can postpone the need for any specific DI/IOC.