4 ms·
There are two places I see the fallacy frequently pop up: 1. Over-engineering. This often comes in the form of trying to perfect something before releasing it,
by rm999 10y ago
There are two places I see the fallacy frequently pop up:
1. Over-engineering. This often comes in the form of trying to perfect something before releasing it, and/or long projects with fluid, changing requirements.
2. Criticizing old code/systems and their developer without any understanding of the context and trade-offs made at the time.
In my experience the first is common and the second is even more common. The worst is when #1 and #2 combine into someone trying to replace a functional system with an improved "v2" that is more complicated and no better.
- 50CNT 10y agoI think #2 is aggravated by lack of documentation. How would any new developer ever understand the context and trade-offs made at the time if they were never written down? If there's no records, it's either reverse engineering, or re-engineering.
- flukus 10y agoI agree with #1, but #2 is often used to defend under investment in a project. 15 years ago it might have been an adequate solution, but the lack of adequate maintenance and improvement is what makes legacy today. I'm also amazed at what some people consider a "functional system". Frequent downtime and developer/support intervention is not what I'd consider functional, but for many business it is.