Comment by wongarsu

7 years ago

Even worse, the correct balance depends on the project. Sometimes everything around you is well understood and set in stone; in that case it's beneficial to plan meticulously ahead. In other cases everything is in flux and nobody knows what the requirements even are; then you just have to incrementally build towards a solution with frequent refactoring. But knowing where on that spectrum you are is crucial.