The "loop and a half"
On 10 October 2017 at 13:44, bartc <bc at freeuk.com> wrote:
>> Can you not see how frustrating this is for people who
>> have spent good chunks of their lives trying to do the best they can
>> on these software systems?
> Only if they concede I might have a point. I haven't seen much sign of that!
You have a point, if you're willing to work in a simplified
environment. Like most older, larger systems, a lot of the complexity
comes from trying to support a large number of
environments/configurations, many more than anyone could have
envisioned at the start. Code gets layered on top of older code to
support extra situations. Refactoring and simplification is possible,
but often really hard because not all of the peculiar situations that
prompted the complexity can be reproduced (or even remembered, much of
the time) by the developers. Strict "no fix is allowed without a
failing test demonstrating the bug" policies can help with that, but
in practice such policies are *really* onerous, and tend to risk
preventing necessary fixes being applied.
The problem is that someone coming in saying "it could be so much
simpler" is probably only considering a very small subset of the
situations that have come up over the lifetime of the project.
Summary: "Things don't need to be this complicated" is likely true.
But the cost of simplifying is likely to either be massive coding
effort, or reintroduction of obscure bugs that were previously fixed.
So I've conceded that you might have a point. Are *you* willing to
concede that you may have missed something when making your