29 Sep 2020

Software archaeology

“The act and experience of programming is, at its heart, a fundamentally human activity […] When considering programming, therefore, it would be a glaring omission to not involve people who specialize in studying artifacts and the human activity that yields them: archaeologists.”

That quote is from John Aycock and Tara Copplestone’s Entombed: An archaeological examination of an Atari 2600 game. I absolutely love this stuff, digging through old code, scratching the head, reverse engineering the thinking.

Although it’s assembly code they’re working with, they re-implement into Python and dig out the “backstory of the game’s development and intoxicant-fueled design using interviews to complement our technical work”.

The payoff is to “uncover its unusual maze-generation algorithmm […] and analyzed the mysterious table that drives it. In addition, we discovered what appears to be a 35-year-old bug in the code […]”.