Step 1) Bemoan how {OldSoftwarePackage} doesn&#x27;t do X, Y, Z<p>Step 2) Write {NewSoftwarePackage} that does most of what {OldSoftwarePackage} did + X<p>Step 3) Spend an order of magnitude more time than expected finishing Y, which turns out to actually be rather hard because {Messy Real World Engineering Details}<p>Step 4) Never get to Z &amp; eventually come up with a narrative about how Z was stupid anyway