Skip to content
← Topics

Legacy code

Code that outlived the assumptions it was written under. I have been writing PHP since version 4, so I have made a lot of it.

Also called legacy systems

I started writing PHP in 1999, on version 4, when register_globals was on by default and the whole catastrophe was considered normal. Some of that code ran for a decade after I left the building.

That experience left me with a couple of unfashionable opinions. Code lasts much longer than the confidence behind it. Whatever feels certain today may look quaint in a diff opened in 2038.

I also think the rule against rewrites was economic, not moral. "Do not rewrite" made sense when a rewrite cost a year of salaries. If a conformance suite and a harness can reduce that to weeks, the rule has to justify itself at the new price. I do not think we have asked it to yet.

See also Comprehension debt and Event sourcing.

Linked from