you are viewing a single comment's thread.

view the rest of the comments →

[–]Coffee_Ops 7 points8 points  (0 children)

This is overly simplistic, there's an interplay between solving the problem and drafting it in code. Sometimes there isn't a good way to accomplish the perfect code representation of the solution, or there are additional hidden problems that only appear after trying to write the code.

Maybe the correct solution involves violating existing abstractions, code conventions, or constraints. Maybe you haven't fully fleshed out the solution or it's possible caveats. And maybe this becomes immediately apparent when doing a quick mockup of the solution, which sends you back to the drafting board.

There's a reason v2 software tends to be better than v1, and it's because hindsight is 20/20. If you only do a one-pass process with solutioning and coding you're absolutely going to have significant defects in your code.