Skip to content
Eric Voskuil edited this page Jan 22, 2017 · 5 revisions

Should be harmless and eliminates some technical debt. Recommended. --Luke Dashjr, 2016-12-23

This is actually the opposite of technical debt:

Technical debt (also known as design debt[1] or code debt) is "a concept in programming that reflects the extra development work that arises when code that is easy to implement in the short run is used instead of applying the best overall solution".

The development work was already complete and working in all functional implementations of Bitcoin. This change on the other hand is a regression to simpler-to-code yet clearly imperfect implementation - "used instead of [retaining] the best overall solution". Ironically it also creates more work for core Bitcoin developers at this point.

It would also be incorrect to consider it a material performance optimization (the true target of this fork). While certain implementations may fail to cache the small amount of necessary block version history, that deficiency is not inherent in the consensus rules affected by this proposal. In that sense this is a shortcut in place of, "applying the best overall solution" - on other works, it creates technical debt.

--Eric Voskuil, 2017-01-21