• From the article:


    Just like financial debt, not all technical debt is bad.

    Actually, it's bad on both counts.  You always end up paying much more in the end.


    From the article:



    Sometimes debt lets us get more things done sooner than we might otherwise be able to do. We do need to take shortcuts at time in development to get a prototype working, or deliver a feature or meet some other goal.

    It's that very "justification" that is the primary cause of technical debt and the eventual "Death by a Thousand Cuts" of a database.  No one considers how much such an inexcusable justification is going to cost down the line because the folks that justify the technical debt for such reasons are normally long gone when the time comes to pay the debt, which normally manifests itself in major performance issues.  That also means that those same people never learn the horrors of such technical debt and carry that same poison to the next job, and the next job, wash, rinse, and repeat.

    It takes so little to actually do things the right way.  Don't fall prey to the ridiculous "it's ok this time" mentality or "we have a schedule to meet" mentality.  If you don't do it right the first time then, just like compound interest, you'll pay many times more trying to fix the problem (and no one fixes technical dept until it becomes a problem) including, perhaps, the loss of reputation in the eyes of the customer and future customers because bad news travels faster than the elevator someone is travelling in or the golf ball they just power to the hole.

    To put it more bluntly, it's never ok to feed the baby a turd so stop trying to justify it.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)