Technical Debt (by Martin Fowler)

Technical Debt (by Martin Fowler)

You have a piece of functionality that you need to add to your system. You see two ways to do it, one is quick to do but is messy — you are sure that it will make further changes harder in the future. The other results in a cleaner design, but will take longer to put in place.