The Innovators: How a Group of Inventors, Hackers, Geniuses, and Geeks Created the Digital Revolutio - Isaacson Walter. Страница 29

Assessing this implosion concept required solving a swarm of equations that could calculate the rate of flow of the compression of air or other material that would occur after an explosion. Thus von Neumann embarked on a mission to understand the potential of high-speed computers.

During the summer of 1944, this quest took him to Bell Labs to study the updated versions of George Stibitz’s Complex Number Calculator. The latest one had an innovation that particularly impressed him: the punched tape that fed in the instructions for each task also included the data, all commingled. He also spent time at Harvard trying to determine if Howard Aiken’s Mark I could help with the bomb calculations. Throughout the summer and fall of that year, he shuttled by train between Harvard, Princeton, Bell Labs, and Aberdeen, acting as an idea bee, pollinating and cross-pollinating various teams with the notions that had adhered to his mind as he buzzed around. Just as John Mauchly had traveled around picking up the ideas that led to the first working electronic computer, von Neumann wandered around gathering the elements and concepts that became part of stored-program computer architecture.

At Harvard, Grace Hopper and her programming partner, Richard Bloch, set up a place for von Neumann to work in the conference room right next to the Mark I. Von Neumann and Bloch would write equations on the blackboard and feed them into the machine, and Hopper would read off the intermediate results as they spewed out. When the machine was “making numbers,” Hopper said, von Neumann would often barge in from the conference room and predict what the results would be. “I’ll just never forget that surge out of the backroom, and then surge back again and put them all over the blackboard, and von Neumann predicting what the numbers would turn out to be and, ninety-nine percent of the time, with the greatest of accuracy—fantastic,” Hopper enthused. “He just seemed to know how the computation was going, or to feel how it was going.”47

Von Neumann impressed the Harvard team with how collaborative he was. He absorbed their ideas, took credit for some, but also made it clear that nobody should claim ownership of any concept. When the time came to write a report on what they were doing, von Neumann insisted that Bloch’s name go first. “I really didn’t feel I deserved that; but that’s the way it came out, so I prize that,” Bloch said.48 Aiken was similarly open about sharing ideas. “Don’t worry about people stealing an idea,” he once told a student. “If it’s original, you will have to ram it down their throats.” Yet even he was struck, and a little discomforted, by von Neumann’s cavalier attitude about parsing out who deserved credit for ideas. “He talked about concepts without worrying where they came from,” Aiken said.49

The problem von Neumann faced at Harvard was that the Mark I, with its electromechanical switches, was excruciatingly slow. It would take months to get his atom bomb calculations done. Even though the paper tape input was useful in reprogramming the computer, it was necessary to switch tapes manually every time there was a call for a subroutine. Von Neumann became convinced that the only solution was to build a computer that worked at electronic speeds and could store and modify programs in an internal memory.

Thus he was primed to be part of the next big advance: the development of a stored-memory computer. So it was fortuitous that, in late August 1944, he had an encounter on the platform of the train station of the Aberdeen Proving Ground.

VON NEUMANN AT PENN

Captain Herman Goldstine, the Army liaison who was working with Mauchly and Eckert on the ENIAC, happened to be on the same platform at Aberdeen waiting for the train north. He had never met von Neumann, but he recognized him instantly. Goldstine tended to be star-struck by brilliant minds, so he was excited by what passed for a celebrity sighting in the world of mathematics. “It was therefore with considerable temerity that I approached this world-famous figure, introduced myself, and started talking,” he recalled. “Fortunately for me von Neumann was a warm, friendly person who did his best to make people feel relaxed.” The chat intensified when von Neumann discovered what Goldstine was doing. “When it became clear to von Neumann that I was concerned with the development of an electronic computer capable of 333 multiplications per second, the whole atmosphere of our conversation changed from one of relaxed good humor to one more like the oral examination for the doctor’s degree in mathematics.”50

At Goldstine’s behest, von Neumann visited Penn a few days later to see ENIAC as it was being built. Presper Eckert was curious to meet the famed mathematician, and he had in mind a test to see if he was “really a genius”: if his first question was about the logical structure of the machine. When that indeed was the first question von Neumann asked, he earned Eckert’s respect.51

ENIAC could solve in less than an hour a partial differential equation that would take Harvard’s Mark I close to eighty hours. That impressed von Neumann. However, reprogramming ENIAC to do different tasks could take hours, and von Neumann realized how severe a drawback that was when it came to tackling a bunch of dissimilar problems. Mauchly and Eckert had been wrestling throughout 1944 with ways to store programs inside the machine. The arrival of von Neumann, brimming with ideas from Harvard and Bell Labs and elsewhere, kicked into a higher orbit the thinking about stored-program computers.

Von Neumann, who became a consultant to the ENIAC team, pushed the idea that the computer program should be stored in the same memory as its data, so that the program could be easily modified as it was running. His work began the first week of September 1944, when Mauchly and Eckert explained the machine in detail and shared their thoughts about creating, in their next version, “one storage device with addressable locations” that would serve as a memory for both the data and programming instructions. As Goldstine put it in a letter to his Army superior that week, “We propose a centralized programming device in which the program routine is stored in coded form in the same type storage devices suggested above.”52

Von Neumann’s series of meetings with the ENIAC team, and in particular four formal sessions he held with them in the spring of 1945, took on such significance that minutes were taken under the title “Meetings with von Neumann.” Pacing in front of a blackboard and ringleading the discussion with the engagement of a Socratic moderator, he absorbed ideas, refined them, and then wrote them on the board. “He would stand in front of the room like a professor, consulting with us,” Jean Jennings recalled. “We would state to him a particular problem that we had, and we were always very careful that the questions represented fundamental problems that we were having and not just mechanical problems.”53

Von Neumann was open but intellectually intimidating. When he made pronouncements, it was unusual for anyone to push back. But Jennings sometimes did. One day she disputed one of his points, and the men in the room stared at her incredulously. But von Neumann paused, tilted his head, and then accepted her point. Von Neumann could listen well, and he had also mastered the ingratiating art of feigning humility.54 “He was an amazing combination of a very brilliant man who knows that he’s brilliant, but at the same time is very modest and shy about presenting his ideas to other people,” according to Jennings. “He was very restless and would march back and forth across the room, yet when he presented his ideas it was almost as though he were apologizing for disagreeing with you or thinking of a better idea.”