The thing that I can't get my head around is how they could iteratively test their code given the (presumably) slow speeds of compilers back in the day.
In other words, how did they write code and make sure it worked as expected?
Surely you couldn't be recompiling the game every 10 seconds. Was there a strategy employed?