My colleague Jim Shore has just released a transcript of a short talk he gave called Does It Work? Are We Done? Is It Right? (Keep It Light!). I share Jim’s thesis that there are three questions we need to answer in software development if we want to achieve any sort of success. In Jim’s words:

So I want to answer these quality questions, “does it work, are we done, is it right,” without incurring waste… and ideally, I’d like to do it in a way that makes me faster, not slower.

His talk specifically addressed testing, especially functional testing, but in working with him I’ve found that asking those questions of any part of a software development process is incredibly valuable.