Extreme Humility

Extreme Humility I think ExtremeProgramming and several other similar approaches are based on humility about our abilities:

* we won't be able to work out all the requirements up front (so allow mid-course corrections). * we won't get the design right first time. So don't try! Just DoTheSimplestThingThatCouldPossiblyWork and then RefactorMercilessly. * we don't know how implementable this design is. So implement it and see. * we'll make mistakes in coding and interpreting designs. So test everything, run the tests every time you make a change. * we don't understand the problem well enough to predict what we'll need later. So YouArentGonnaNeedIt. * we can't reliably write simple, understandable code on our own, so we work in pairs for constant feedback.