Too Long; Didn't Read
Technical debt arises when the development team is forced to speed up the process of product delivery or upgrade, postponing refactoring for the future (which is usually unknown) There are usually two global causes of technical debt: intentional and unintentional. The difference between prudent and reckless accumulation is based on the teams' full awareness of the fact of debt accumulation: *"We know that we have sacrificed refactionoring in this iteration/task/feature and we have to pay it off as soon as possible"