Technical Debt and the Cost of the Next Change · seed 1 · A4, ink-friendly. The answer key prints on its own page for grown-ups.

Borrowed time and its interest

Computing · Software Engineering · ages 21-22
Name ______________________   Date ____________
  1. Which pair matches the loan idea in code?

    • Principal is extra cost, interest is skipped cleanup
    • Principal is skipped cleanup, interest is extra cost per change
    • Principal and interest are both team names
  2. Tidy old code that costs nothing extra is still debt.

    Circle one:   True   False

  3. In the delivery zones example, what is the interest?

    • A code edit plus testing for every new zone
    • The afternoon moving zones to a table
    • The launch party after shipping
  4. A module is ten years old, but it has good tests and is easy to change safely. It is technical debt.

    Circle one:   True   False

  5. A small shop has cost C(x) = 3000 + 40x and revenue R(x) = 100x, where x is the number of units sold. At what number of units does it break even?

    Answer: ______________

  6. A factory has cost function C(x) = 100 + 5x + 0.02x squared for making x widgets. Using marginal cost, what does the 50th widget cost to make?

    • 5 dollars
    • 7 dollars
    • 9 dollars
    • 250 dollars
  7. What happens to unrecorded debt with no repayment date?

    • Its interest keeps compounding
    • It repays itself quietly
    • It turns into documentation
  8. Your team can ship a feature this week by hardcoding a tax rate instead of building the settings screen. Which plan treats this as deliberate, responsible debt?

    • Hardcode the rate and tell no one
    • Hardcode the rate, file a ticket that names building the settings screen as the repayment, and link the ticket from the code
    • Skip the feature entirely
    • Build the settings screen now even if it blows the deadline
  9. Two files are ten years old. One charges extra on every change, the other never does. Which one is debt?

    • Only the one that charges extra per change
    • Both, because both are old
    • Neither, because age erases debt
  10. You borrow 2000 dollars at 8 percent interest compounded annually and make no payments for 3 years. What is the balance, rounded to the nearest cent?

    Answer: ______________

LightMySky · lightmysky.comW1-mt_iA8-0Qg4ID-s1

Answer key

For grown-ups. Fold this page away before handing over the rest.

Borrowed time and its interest W1-mt_iA8-0Qg4ID-s1

  1. Principal is skipped cleanup, interest is extra cost per change · Skipped cleanup is the borrowed sum, and the per-change cost is its interest.
  2. False · Without an extra cost per change, old code is just old code.
  3. A code edit plus testing for every new zone · Each new zone repeats the edit and the tests, which is the running cost.
  4. False · Age alone is not debt. Debt is the extra cost or risk a change carries, and well-tested old code can change cheaply.
  5. 50 · Break-even is where cost and revenue match, the point where the borrowed setup money stops being a loss.
  6. 7 dollars · Marginal cost is the cost of the next unit, which is exactly the idea behind the cost of the next change to a codebase.
  7. Its interest keeps compounding · Nobody scheduled the cleanup, so every change keeps paying and paying.
  8. Hardcode the rate, file a ticket that names building the settings screen as the repayment, and link the ticket from the code · Deliberate debt has three parts: the shortcut, a written record, and a named time or trigger for repayment.
  9. Only the one that charges extra per change · Age alone decides nothing. The per-change charge is the test.
  10. 2519.42 · Interest that itself earns interest is why debt left alone grows the way untended shortcuts do.
Worksheet · LightMySky