I FIRST TANGLED with digital computers late in 1958. That may sound like the Dark Ages, but we considered ourselves infinitely more advanced than our predecessors of a decade earlier, when programming was done mostly by sticking plugs into plug-boards and a card-sequenced programmable calculator was considered the height of sophistication.
Even so, 1958 was still early enough that the argument between analog and digital computers had not yet been settled, decisively, in favor of the digital. And the first computer that I programmed was, by anyone's standards, a brute.
It was called DEUCE, which stood for Digital Electronic Universal Computing Engine, and it was, reasonably enough to cardplayers, the next thing after the ACE (for Automatic Computing Engine), developed by the National Physical Laboratory at Teddington. Unlike ACE, DEUCE was a commercial machine; and some idea of its possible shortcomings is provided by one of the designers' comments about ACE itself: "If we had known that it was going to be developed commercially, we would have finished it."
DEUCE was big enough to walk inside. The engineers would do that, tapping at suspect vacuum tubes with a screwdriver when the whole beast was proving balky. Which was often. Machine errors were as common a cause of trouble as programming errors; and programming errors were dreadfully frequent, because we were working at a level so close to basic machine logic that it is hard to imagine it today.
I was about to say that the computer had no compilers or assemblers, but that is not strictly true. There was a floating-point compiler known as ALPHACODE, but it ran a thousand times slower than a machine code program and no one with any self-respect ever used it. We programmed in absolute, to make the best possible use of the machine's 402 words of high-speed (mercury delay line) memory, and its 8,192 words of backup (rotating drum) memory. Anything needing more than that had to use punched cards as intermediate storage, with the programmer standing by to shovel them from the output hopper back into the input hopper.
When I add that binary-to-decimal conversion routines were usually avoided because they wasted space, that all instructions were defined in binary, that programmers therefore had to be very familiar with the binary representation of numbers, that we did our own card punching with hand (not electric) punches, and that the machine itself, for some reason that still remains obscure to me, worked with binary numbers whose most significant digit was on the right, rather than on the left - so that 13, for example, became 1011, rather than the usual 1101 - well, by this time the general flavor of DEUCE programming ought to be coming through.
Now, I mention these things not because they are interesting (to the few) or because they are dull (to the many) but to make the point that anyone programming DEUCE in those far - off days was an individual not to be taken lightly. We at least thought so, though I suspect that to higher management we were all harebrained children who did incomprehensible things, many of them in the middle of the night (when debug time was more easily to be had).
A few years later more computers became available, the diaspora inevitably took place, and we all went off to other interesting places. Some found their way to university professorships, some into commerce, and many to foreign parts. But we did tend to keep in touch, because those early days had generated a special feeling.
One of the most interesting characters was Bill Rigley. He was a tall, dashing, wavy-haired fellow who wore English tweeds and spoke with the open "a" sound that to most Americans indicates a Boston origin. But Bill was a New Zealander, who had seen at firsthand things like the Great Barrier Reef that the rest of us had barely heard of. He didn't talk much about his home and family, but he must have pined for them, because after a few years in Europe and America he went back to take a faculty position in the Department of Mathematics (and later the Computer Science Department, when one was finally created) at the University of Auckland.
Auckland is on the North Island, a bit less remote than the bleaker South Island, but a long way from the East Coast of the United States, where I had put down my own roots. Even so, Bill and I kept in close contact, because our scientific interests were very similar. We saw each other every few years in Stanford, or London, or wherever else our paths intersected, and we knew each other at the deep level where few people touch. It was Bill who helped me to mourn when my wife died, and I in turn knew (but never talked about) the dark secret that had scarred Bill's own life. No matter how long we had been separated, our conversations when we met picked up as though they had never left off.
Bill's interests were encyclopedic, and he had a special fondness for scientific history. So it was no surprise that when he went back to New Zealand he would wander around there, examining its contribution to world science. What was a surprise to me was a letter from him a few months ago, stating that in a farmhouse near Dunedin, toward the south end of the South Island, he had come across some bits and pieces of Charles Babbage's Analytical Engine.
Even back in the late 1950's, we had known all about Babbage. There was at the time only one decent book about digital computers, Bowden's Faster Than Thought, but its first chapter talked all about that eccentric but formidable Englishman, with his hatred of street musicians and his low opinion of the Royal Society (existing only to hold dinners, he said, at which they gave each other medals). Despite these odd views, Babbage was still our patron saint. For starting in 1834 and continuing for the rest of his life, he tried - unsuccessfully - to build the world's first programmable digital computer. He understood the principles perfectly well, but he was thwarted because he had to work with mechanical parts. Can you imagine a computer built of cogs and toothed cylinders and gears and springs and levers?
Babbage could. And he might have triumphed even over the inadequacy of the available technology, but for one fatal problem: he kept thinking of improvements. As soon as a design was half assembled, he would want to tear it apart and start using the bits to build something better. At the time of Babbage's death in 1871, his wonderful Analytical Engine was still a dream. The bits and pieces were carted off to London's Kensington Science Museum, where they remain today.
Given our early exposure to Babbage, my reaction to Bill Rigley's letter was pure skepticism. It was understandable that Bill would want to find evidence of parts of the Analytical Engine somewhere on his home stamping ground; but his claim to have done so was surely self-delusion.
I wrote back, suggesting this in as tactful a way as I could; and received in prompt reply not recantation, but the most extraordinary package of documents I had ever seen in my life (I should say, to that point; there were stranger to come).
The first was a letter from Bill, explaining in his usual blunt way that the machinery he had found had survived on the South Island of New Zealand because "we don't chuck good stuff away, the way you lot do." He also pointed out, through dozens of examples, that in the nineteenth century there was much more contact between Britain and its antipodes than I had ever dreamed. A visit to Australia and New Zealand was common among educated persons, a kind of expanded version of the European Grand Tour. Charles Darwin was of course a visitor, on the Beagle, but so also were scores of less well-known scientists, world travelers, and gentlemen of the leisured class. Two of Charles Babbage's own sons were there in the 1850's.
The second item in the package was a batch of photographs of the machinery that Bill had found. It looked to me like what it was, a bunch of toothed cylinders and gears and wheels. They certainly resembled parts of the Analytical Engine, or the earlier Difference Machine, although I could not see how they might fit together.
Neither the letter nor the photographs were persuasive. Rather the opposite. I started to write in my mind the letter that said as much, but I hesitated for one reason: many historians of science know a lot more history than science, and few are trained computer specialists. But Bill was the other way round, the computer expert who happened to be fascinated by scientific history. It would be awfully hard to fool him unless he chose to fool himself.
So I had another difficult letter to write. But I was spared the trouble, for what I could not dismiss or misunderstand was the third item in the package. It was a copy of a programming manual, handwritten, for the Babbage Analytical Engine. It was dated July 7, 1854. Bill said that he had the original in his possession. He also told me that I was the only person who knew of his discovery, and he asked me to keep it to myself.
And here, to explain my astonishment, I have to dip again into computer history. Not merely to the late 1950's, where we started, but all the way to 1840. In that year an Italian mathematician, Luigi Federico Menabrea, heard Babbage talk in Turin about the new machine that he was building. After more explanations by letter from Babbage, Menabrea wrote a paper on the Analytical Engine, in French, which was published in 1842. And late that year Ada Lovelace (Lord Byron's daughter; Lady Augusta Ada Byron Lovelace, to give her complete name) translated Menabrea's memoir, and added her own lengthy notes. Those notes formed the world's first software manual; Ada Lovelace described how to program the Analytical Engine, including the tricky techniques of recursion, looping, and branching.
So, twelve years before 1854, a programming manual for the Analytical Engine existed; and one could argue that what Bill had found in New Zealand was no more than a copy of the one written in 1842 by Ada Lovelace.
But there were problems. The document that Bill sent me went far beyond the 1842 notes. It tackled the difficult topics of indirect addressing, relocatable programs, and subroutines, and it offered a new language for programming the Analytical Engine - what amounted to a primitive assembler.
Ada Lovelace just might have entertained such advanced ideas, and written such a manual. It is possible that she had the talent, although all signs of her own mathematical notebooks have been lost. But she died in 1852, and there was no evidence in any of her surviving works that she ever blazed the astonishing trail defined in the document that I received from Bill. Furthermore, the manual bore on its first page the author's initials, L.D. Ada Lovelace for her published work had used her own initials, A.A.L.
I read the manual, over and over, particularly the final section. It contained a sample program, for the computation of the volume of an irregular solid by numerical integration - and it included a page of output, the printed results of the program.
At that point I recognized only three possibilities. First, that someone in the past few years had carefully planted a deliberate forgery down near Dunedin, and led Bill Rigley to "discover" it. Second, that Bill himself was involved in attempting an elaborate hoax, for reasons I could not fathom.
I had problems with both those explanations. Bill was perhaps the most cautious, thorough, and conservative researcher that I had ever met. He was painstaking to a fault, and he did not fool easily. He was also the last man in the world to think that devising a hoax could be in any way amusing.
Which left the third possibility. Someone in New Zealand had built a version of the Analytical Engine, made it work, and taken it well beyond the place where Charles Babbage had left off.
I call that the third possibility, but it seemed at the time much more like the third impossibility. No wonder that Bill had asked for secrecy. He didn't want to become the laughingstock of the computer historians.
Nor did I. I took a step that was unusual in my relationship with Bill: I picked up the phone and called him in New Zealand.
"Well, what do you think?" he said, as soon as he recognized my voice on the line.
"I'm afraid to think at all. How much checking have you done?"
"I sent paper samples to five places, one in Japan, two in Europe, and two in the United States. The dates they assign to the paper and the ink range from 1840 to 1875, with 1850 as the average. The machinery that I found had been protected by wrapping in sacking soaked in linseed oil. Dates for that ranged from 1830 to 1880." There was a pause at the other end of the line. "There's more. Things I didn't have until two weeks ago."
"I'd rather not. Not like this." There was another, longer silence. "You are coming out, aren't you?"
"Why do you think I'm on the telephone? Where should I fly to?"
"Christchurch. South Island. We'll be going farther south, past Dunedin. Bring warm clothes. It's winter here."
"I know. I'll call as soon as I have my arrival time."
And that was the beginning.