> When an engineer like this proposes something that adds unnecessary complexity, it's usually hard to argue with. The proposed change typically does indeed make the system objectively better, and they're the one taking responsibility for doing the work and ensuring its correctness. But the overall system becomes a little more brittle, and a little harder to reason about, two things that are much more difficult to measure than memory and power.
There's a lot of fine points made here already by other commenters. I will say that long-term maintenance of software is a non-trivial concern. If you can identify that a change is good in terms of, say, power consumption but bad, say, in terms of making the system more brittle you now have an optimization decision. Do you _need_ better power consumption enough to sacrifice developer time long-term, potentially introducing bugs in the future?
There's a lot of fine points made here already by other commenters. I will say that long-term maintenance of software is a non-trivial concern. If you can identify that a change is good in terms of, say, power consumption but bad, say, in terms of making the system more brittle you now have an optimization decision. Do you _need_ better power consumption enough to sacrifice developer time long-term, potentially introducing bugs in the future?