Heart's hardware ace was Severo Ornstein, a thirty-eight-year-old Lincoln alumnus who had worked for Heart on and off for years. Ornstein was an intense man of many and diverse interests. The son of a virtuoso pianist and prominent composer, Ornstein had attended Harvard and had flirted briefly with a major in music before his parents argued him out of it. He finally settled on geology. After leaving Harvard, Ornstein had become interested in computers and had gone to work at Lincoln. When his colleague Wes Clark left for Washington University in St. Louis to build a computer of his own design, Ornstein went with him. After three years in St. Louis, Ornstein itched to return to Cambridge, so he called Heart, who offered him a position at BBN.
When the request for proposals arrived from ARPA, Heart handed a copy to Ornstein and said, “Why don't you take this home and have a look at it, see what you think?” Ornstein returned to Heart's office the next day and said, “Well, sure, I suppose we could build that if you wanted to. But I can't see what one would want such a thing for.” Nonetheless, Ornstein thought the IMP-building project looked like fun, which was always a primary consideration for him.
Heart had a predilection for judging people not by their looks or manners or political views, but almost purely by how smart he believed them to be. Or, as he liked to put it, by how many neurons per cubic centimeter their brains contained. If he decided the number was unusually high, Heart was likely to tolerate a lot more idiosyncrasy in one than in another whose gray matter he thought was less densely packed. When talking, Heart often used computer jargon in nontechnical circumstances. “It's a no-op,” he might say to his wife Jane if they decided to leave a Sunday afternoon free. (No-op, or no operation, refers to a line of code that accomplishes nothing.) Or he might say, “It's binary,” to one of their small children, meaning it is a black-and-white situation.
Heart's knack for putting together effective engineering teams had made him a highly regarded and valuable project manager. He looked for people who would be committed to a common mission rather than a personal agenda. He preferred to keep teams small so that everyone was always talking to everyone else. Heart chose the kind of people who took personal responsibility for what they did. And while Heart tolerated idiosyncrasy, he shied away from egocentric “head cases,” no matter how smart they were.
In assembling BBN's team for the ARPA proposal, Heart made certain he pulled in engineers with all the requisite skills for such an ambitious undertaking. Kahn, for instance, was the consummate theoretician. He, more than anyone at BBN, understood the problems associated with sending information over telephone lines, and he had clear ideas about the best error-control mechanisms. Ornstein was a perfectionist, and it showed in the hardware he built, while Walden brought with him both his knowledge of real-time systems and a resolute willingness to work long hours. Cosell had the ability to burrow into complex software programs and find bugs faster than anyone else at BBN. Because of this, Cosell was one of the company's human insurance policies: Projects would be worked on by teams, but every BBN manager knew that if his project got into trouble, he could throw Cosell into the job and superhuman things would happen in a hurry. Although there remained a great deal of detailed design work, among them the team members understood the most important technical issues.
As the team got started, Heart already knew what was in store: four weeks of working around the clock. Heart was expected home for dinner every evening at six-thirty, and he always made it. But after dinner he disappeared into his study and didn't emerge until long after his family had gone to bed.
An important initial decision was which hardware to use. Reliability was, by far, Heart's chief concern. His fifteen years at Lincoln Lab building antennae and radar systems for the military had taught him to worry about reliability above all else. Intuitively, Heart believed that the graduate students who would be knocking around the IMPs at the university sites wouldn't be able to keep their hands off the equipment. He had been a student, and he had probably even done the very kinds of things he fearedâhell, he
knew
âthey would try to do. They'd go poking around in the box to see how it worked.
Heart's choices were limited. The minicomputer industry was still relatively young. Its leaders were Digital Equipment and Honeywell. From the start, the reliability issue led Heart to favor the new Honeywell DDP-516, the machine housed in the heavy-duty steel cabinet. The Navy had a reputation for setting rigorous engineering standards. And some of BBN's people knew some of Honeywell's people, who made the machine at a plant not far from BBN's Cambridge location. The 516 also helped to settle Heart's fear that inquisitive graduate students might bring down the network with their tinkering. He could rest much easier knowing the IMPs would be housed in a box built to withstand a war.
The functionality of the Honeywell computer's sophisticated input/output (I/O) capabilityâthe speed and efficiency with which it could communicate with external devices such as modemsâalso helped propel it to the top of the list. As the handling of I/O traffic was the main function of the IMP, a machine with a good I/O structure was absolutely essential.
Not long into writing the proposal, Dave Walden began feeling that he might be out of his depth. As the first programmer Heart brought to the project, Walden did a lot of the early thinking about general coding issues, and he did some of the original charts sketching out in block form the logical flow and timing of the program. Walden had outlined enough of the program to realize they were undertaking something difficult. He decided that the ARPA proposal would provide a good excuse to recruit Will Crowther, the ingenious programmer for whom Walden had worked at Lincoln, to lead the software effort. Walden wasn't in the least reluctant to bring in someone above him. He was confident enough in his own talents to shrug off pecking-order concerns that might worry a lot of other people. The two had worked closely at Lincoln, and Walden was happier to be on a team with Crowther than on one without him. And besides, Crowther was exceptional.
Having Crowther on the team wouldn't just boost the chances of making the software work. Having Crowther at BBN would make doing the work more pleasant. Crowther was quiet, easy to work with, and when it came to writing code, he was downright inspiring. He was also Ornstein's good friend and rock-climbing companion. Crowther seemed to concentrate best while hanging from door frames by his fingertips, doing chin-ups. And he was known for his mathematical doodling. While others passed the time at lengthy meetings by drawing squiggles and curlicues, Crowther filled his page with a thicket of differential equations.
Walden, Heart, and Ornstein were pretty sure that Crowther hadn't been entirely happy at Lincoln since Heart had left. Crowther liked working for Heart, and while reporting to Heart at Lincoln, he had grown accustomed to seeing things built. After Heart left, a lot of the people who had worked for him had gone back to less productive tinkering. Ornstein called Crowther and said, “Willy, you ought to come to BBN,” to which Crowther readily agreed.
In Crowther, BBN gained an invaluable addition. He specialized in producing complex, tightly written pieces of code, which were exactly what was required in the IMP. In fact, writing small intricate bits of code was one of Crowther's greatest pleasures in life. His code was among the leanest anyone who worked with him had ever seen. Since the IMPs were to be hooked up to phone lines, with data constantly flowing in and out, the idea was to have a data packet arrive at an IMP, be processed, and immediately either be sent forward or placed in a queue to await its turnâall in less time than it took to snap your fingers. Every instruction took one or two millionths of a second (microseconds) to execute. Since every unnecessary instruction ate up one or two extra microseconds, each little task, or piece of software code, had to be written with intense frugality, using the fewest instructions possible.
Central to the design of the network was the idea that the subnet of IMPs should operate invisibly. So, for instance, if someone seated at a host computer at UCLA wanted to log on to a computer at the University of Utah, the connection should appear to be direct. The user should not have to be bothered with the fact that a subnet even existed. The effect was similar to direct dialing in the telephone system, which freed callers from the annoyance of having to wait for an operator to make their connections. Like the maze of automated switching equipment at a phone company, the IMPs were to be “transparent” to the user. As Roberts described it in the call for proposals, “Each transmitting host looks into the network through its adjacent IMP and sees itself connected to the receiving host.”
To achieve that transparency, the network was going to have to be fast, free of congestion, and extremely reliable. These were relatively straightforward requirements that Roberts had written into the request for proposals, but no one expected that actually accomplishing them would be easy.
However, one of the first things BBN's software team discovered was that they could make the code process ten times the number of packets per second that Roberts was requiring. Before doing anything else, Crowther and Walden wrote the code for the inner loopâthe heart of the programâand counted the number of instructions. Roberts would have been content with an inner loop of 1,500 instructions; Crowther and Walden used 150. From that, the two programmers calculated just how quickly the IMP could process each packet. With that information, they were able to predict how many packets could be moved per second. “We actually sat down and wrote the hundred and fifty lines of code, counted them, and then we knew,” Crowther said. They had figured out the kernel.
“We take the position that it will be difficult to make the system work,” BBN wrote hedgingly in its proposal. In this cautious way the BBN team let Roberts know that it didn't take for granted a task that was unprecedented in its complexity, revolutionary in concept, and filled with technical details of uncertain feasibility. Yet the proposal then went on to demonstrate that BBN seemed to have the problem solved.
By the time the proposal was finished, it filled two hundred pages and cost BBN more than $100,000, the most the company had ever spent on such a risky project. The BBN team had covered so much of the design of the IMPs that a large fraction of the entire system was already clearly defined. BBN's finished proposal was more blueprint than outline. Its engineers had designed test programs and regular performance checks for IMPs and the network. They described how the network would handle congestion in the buffers (storage areas in the machines that served as waiting areas and staging areas for the flow of packets into and out of the network), and how it would recover from line and computer failures. They provided ARPA with flowcharts outlining how the IMP software would handle such difficult problems as timing and the continual updating of routing tables. They came up with detailed computations, equations, and tables that covered, among other things, transmission delays and the queueing of packets. It was all there for Roberts to see.
The BBN team submitted its proposal on September 6, 1968, relatively certain that no one else had prepared a bid as detailed as theirs. Years later, when people who worked on the BBN proposal were asked how long it took to put the document together, some of them said honestly they thought it had taken six months.
Heart's team had obviously done an impressive amount of extra spade work, resolving some problems Larry Roberts hadn't expected to see covered. BBN held another advantage: its relatively small size. Roberts didn't want to deal with a lot of bureaucracy, and the other proposals were fraught with it. The team Raytheon was putting forth, for example, spanned five layers of management. Roberts could see that just finding the right person with whom to talk over the slightest problem might require a dozen phone calls. The BBN team, on the other hand, had a very simple hierarchy. Everybody reported to Heart, who handed out the tasks and saw that they got done. Heart had a boss, but he appeared to be giving Heart ample latitude to do as he pleased with this project.
The first sign that BBN's bid was being taken seriously came when Roberts called a meeting to review parts of the proposal. Heart, Crowther, Kahn, and Ornstein, their spirits high, took the train to Washington. (Heart tried, unsuccessfully, to convince Crowther to wear something on his feet besides sneakers.) During the meeting, they defended and expanded on their proposal. Roberts tested, prodded, and poked the engineers to see if they had really thought deeply and thoroughly about the system. And his questions continued for some weeks afterward. “At some level I think that the continued questioning by Larry kept us thinking about the problems and continuing to fill out design details subliminally,” recalled Ornstein. “But I think the more important thing was that we took it to heart more than the other contenders. We made the design our problem and did our best to find solutions we believed in without bowing too much to the specifications others had put down.”
But for the most part, all they could do was wait. If Roberts had a favorite proposal, he wasn't letting anyone know it. It could take months before they heard anything definite. By midautumn they all returned to what they had been doing before the proposal marathon. Time slowed down again. Crowther went caving, which, next to rock climbing and writing code, was his passion. Heart got home at dinnertime and didn't go back to work. Kahn was about the only one who, by force of habit, routinely kept working late into the night. Everyone was anxious. “I personally swung from certainty that our proposal couldn't be beaten,” said Ornstein, “to a belief that there was no way we could win, given the size of BBN compared to the other contenders.”