Refactoring

/ˌriː-ˈfæk-tər-iŋ/

noun — "changing the structure without changing the behavior."

Refactoring is the disciplined process of restructuring existing code, systems, or designs without altering their external behavior. The goal is not to add new features or fix bugs directly, but to improve internal clarity, reduce complexity, and make future changes easier and safer.

Technical Debt

/ˈtek-nɪ-kəl det/

noun — "the interest you pay on shortcuts you didn’t mean to take."

Technical Debt is the accumulation of future cost created when software is built in a way that is expedient today but suboptimal for long-term maintenance, scalability, or clarity. It is not necessarily a mistake in the moment of creation; rather, it is a trade-off where speed of delivery is chosen over structural purity, with the understanding that the “borrowed time” will eventually need to be repaid.

Wrong Thing

/rȯŋ thiŋ/

noun — "the choice that works until it doesn’t."

Wrong Thing is a design, action, or decision that is fundamentally incorrect in context, even if it appears to function or provides short-term convenience. It is often contrasted with the Right Thing, representing a direction that better aligns with clarity, correctness, and long-term maintainability.

Right Thing

/rīt thiŋ/

noun — “the supposedly obvious solution that somehow still starts arguments.”

Right Thing refers to the solution, behavior, design choice, or action considered compellingly correct, elegant, or appropriate within a given technical or conceptual context. The phrase is often spoken with heavy emphasis—as if capitalized verbally—even when the “correct” answer is far from universally agreed upon. In hacker culture and programming discussions, invoking the Right Thing usually implies confidence bordering on philosophy.