Martin Fowler describes four kinds of "technical debt"
martinfowler.com
martinfowler.com
1. Customer/user/consumer has a vague idea of what they need but doesn't know how to express it.
2. Developer works with customer to learn their business and understand their requirements.
3. Developer throws together a prototype to confirm that he understands the problem.
4. Customer sees that developer is on the right track. If these 9 enhancements are done, then we'll really have something.
5. Developer quickly adds 9 enhancements to prototype.
6. Customer loves it! Move it to production so we can play with it for a while.
7. While customer plays with it, developer maps out a plan to architect, refactor, and scale the prototype to be "production worthy".
8. Developer is pulled away to 5 other urgent projects.
9. Customer continues to use prototype as production software.
10. Two years later: "Who wrote this shit?"
Which quadrant does that fit into?
As for step 10, it's the rare system that doesn't suffer that two years into production.
The concept of prudent-inadvertent debt was new to me but immediately made sense.
"A phrase used to convince you to do something different that assumes you don’t actually want to know why it’s a better approach."
http://www.randsinrepose.com/archives/2009/07/13/the_words_y...
Therefore, it becomes technical debt when these good engineers reflect on their design decisions and don't do anything about it.
I do. The GP was rude, but has a point.
I spent several years in the OO-agile ecosystem. I'm glad to be out of it. In retrospect, it feels shallow to me; I'm not sure exactly why. Maybe it has something to do with emphasizing half-baked methodological ideas over concrete system-building.
One of the guys who signed the agile manifesto told me that he decided it had taken the "human" side of software development too far. He was joking, but I think he was on to something.
To respond in-kind -- maybe this indicates that you just haven't reached the level of expertise necessary to appreciate the nuances of the topic addressed here (regardless of whether you agree or disagree with his opinion) -- and moreover, perhaps you lack the perspective necessary to differentiate between architectural astronauts and people presenting real issues.