Since you haven’t spent weeks (or months) writing code, it’s a lot easier to accept criticism at this point and you’ll wind up with a better product and a better implementation. In addition, once you’ve nailed down the design doc, it will serve as your guide for both scheduling and dividing the work on your project.

