As a reaction to seeing this condition and its deleterious effects, I coined the term technical fraud to refer to the practice of incurring unmanaged and hidden technical debt. Many U.S. states have "lemon laws" that make it illegal to knowingly sell someone a car that has undisclosed maintenance problems. Selling a "lemon" is a fraudulent practice in the world of cars, and it should be considered as such in the world of software.
Are We All Technical Fraudsters?
Are most people who deliver software purposefully engaging in fraud? Of course not. We work in a business where this fraud has become normalized due to various forces that are mostly beyond our control; in particular, market forces that seek to minimize the initial delivery cost of software over the long-term maintenance costs.
The good news is that the situation isn't hopeless. In fact, practices, tools, and disciplines are already available that can help us to deliver software without engaging in technical fraud.
In future articles in this series on the topic of technical finance, I'll cover various practices that we can leverage to root out technical fraud, restoring the promise of software as a force that adds positive net economic value to companies.