There’s something uniquely painful about debugging your own old code. You remember the intent, but none of the decisions that led to the implementation. It really does feel like archaeology.