|
|
|
|
|
by Deestan
5949 days ago
|
|
This is a project management problem, not a problem with too smart developers. The problematic activities described here, overgeneralization and solving imaginary problems (aka Coding for A Rainy Day), are simply typical newbie mistakes. Otherwise highly competent developers almost always fall into this trap early in their careers, so the important thing is to have someone experienced in charge of the project who can veto their weirder ideas until they mature. I think every software company should hand out a copy of "The Pragmatic Programmer" to all new hires. It gives much good advice on how to not overcomplicate things. |
|
- Designing too much flexibility at the start of a project and regretting it when it takes ten weeks to build a prototype.
- Designing too little flexibility at the start of the project and ending up living with unmaintainable cruft.
- Realizing that all projects are hell and planning on a rethink/rewrite/refactor when the real requirements become clear because no one can predict the future, so why not hold some contingency for the inevitable.