Joel makes a really good point in this article. We cannot prepare for every eventuality, and in fact it simple isn't cost effective to do so. The best we can do is plan for the things that are expected to go wrong, and make permenant fixes (either with technology or with processes) when things we don't expect come up.