When did double-keying cease to be a common practice in verification?
About the time when data entry became interactive, i.e. when terminals became a thing, which is the late 1960s. On a terminal data entry could be not only easy read and corrected, but as well machine checked right at entry. Something not possible before (*1).
Even in the programmers’ office
Well, that's a bit extreme, but understandable when punching was done by a dedicated craft who didn't really understood to what she was typing. Saves against a missed comma or space or weird variable name. Saves as well all the paper for redoing and valuable machine time wasted one a missed compile job (*2).
we had both machines
I guess the answer is already in there but maybe hard to imaging in modern times: Keypunches and card based processing predates all programmable and digital computing.
Those two keypunch types, straight and verifying (*3), were needed as verification is a different process. There was no way to check any data entry, no processing power for check numbers, valid ranges, format or alike. But what could have been made with (electro-) mechanics already at the turn of the century (20th that is) was comparing the 12 holes at a card position with the 12 levers pulled by a key. A pretty good check when assuming that two different people would not make the same mistake at the same location.
It worked rather well and made lots of sense exactly until the point when computers became interactive - either with the main CPU or local data entry stations (*4).
and were expected to verify our debugging changes.
Now that's a strong hint that at that time and place it was more a case of the 3 holy rules (*5):
- It's the way we always did it
- We never have done it otherwise
- Who are you to ask otherwise
After all, the chances that the the same person does the same typo at the same location are extreme high, making he whole process somewhat useless.
*1 - This is in fact what brought us some of the very first desktop computers: Programmable data entry terminals like the Cogar 4 or Datapoint 2200 - the later being the start of the direct linage to today's x86
*2 - Of course some places also may have made it mandatory for programmers just because it's the way it is - never overestimate the flexibility of bureaucrats.
*3 - Later models combined that into one.
*4 - Well, there were intermediate steps for data entry with key punches that had punch tape control for data entry allowing only certain characters at certain positions of a card and so on, but they were extreme expensive and needed careful setup, so only useful for huge amounts of ever the same cards.
*5 - May sound better in Bavarian