The spacecraft landed up maneuvering in a way that it shouldn’t have and which put it on a path to crash, possibly into inhabited areas. For safety purposes, then, 293 seconds into the the mission it was destroyed on command.
Ultimately, it wasn’t only a software bug that led to the loss of the spacecraft. In fact, this same bug was present in earlier launches of the first two Ranger missions, upon which the Mariner 1 system was based, without causing a problem. It was only after the hardware failure of the guidance antenna that the flawed software came into play.
Nevertheless, the bug was a key reason for the loss of the spacecraft. Luckily, as the final project report indicated (see pages 13-14), the problems that doomed Mariner 1 were addressed in time for the launch of Mariner 2, which successfully completed the mission intended for Mariner 1, a fly-by of Venus, 50 years ago last week.
Would this bug have been caught earlier if the code had simply been reviewable on screen by a second set of eyes? We’ll never know, and I’m not suggesting this sort of thing couldn’t happen today (it still does, in fact). But, not knowing what systems NASA or JPL had in place 50 years ago to review and check the code, I wonder if the extra steps involved with verifying punch cards played a small role in not catching this bug.
What’s your take? Do you have experience coding via punch cards? Please share in the comments.