New York Times Technology on NYTimes.com June 13, 2001 Pioneers of the 'Fortran' Programming Language By STEVE LOHR THEY were young, in their 20's and early 30's, brimming with energy and optimism, a tightknit team. Their goal was to simplify programming and open up computing to more people. The industry consensus was that they were trying the impossible. They suffered setbacks and disappointments. A six- month timetable for completion became nearly three years. It was called Formula Translator - Fortran, for short. John Backus, who led the team at I.B.M., came up with the name to no great enthusiasm from his colleagues. They used to joke that it sounded like something spelled backward. But nobody could come up with a better idea, so the name stuck, as did Fortran, a programming language that was a historic breakthrough in computing. Today, Fortran is often mentioned wistfully by computer scientists and veteran programmers as the first programming language they learned but then abandoned as newer languages were developed for new kinds of computing. But to point out how quickly programming has moved to generations of new tools does not minimize the extraordinary advance that Fortran gave to the world of software. Other programming languages rose from the foundation that Fortran built. Computer historians have described Fortran as the software equivalent of the transistor. Kenneth Thompson, who created the Unix operating system at Bell Laboratories in 1969, observed that "95 percent of the people who programmed in the early years would never have done it without Fortran. It was a massive step." Or, as James Gray, a leading software researcher who now works for Microsoft, declared with a biblical flourish, "In the beginning, there was Fortran." Before Fortran, putting a human problem - typically an engineering or a scientific calculation - on a computer was an arduous and arcane task. It could take weeks and required special skills. Like high priests in a primitive society, only a small group of people knew how to speak to the machine. Yet there were some heretics in the priesthood, and Mr. Backus was one of them. "I figured there had to be a better way," he recalled nearly five decades later at his San Francisco home, which overlooks the Golden Gate Bridge. "You simply had to make it easier for people to program." In late 1953, Mr. Backus sent a brief letter to his boss, asking that he be allowed to search for a "better way" of programming. He got the nod and thus began the research project that would eventually produce Fortran. The managerial touch was light: Mr. Backus never made a formal budget, even as schedules slipped and the team grew to 10 people. The team was heavy with math training because so much of computing at the time was numerical analysis and mathematics, but it was an eclectic group - a crystallographer, a cryptographer, a chess wizard, an employee lent from an aircraft manufacturer, a researcher borrowed from M.I.T. and a young woman who joined the project straight out of Vassar College. They worked together in one open room, their desks side by side. They often worked at night because it was the only way they could get valuable time on the I.B.M. 704 computer, in another room, to test and debug their code. The odd hours and close work bred camaraderie. For relaxation, there were chess matches and, in the winter, impromptu snowball fights. They knew one another, and they knew their code and the machine they were working on, right down to the metal. "We were the hackers of those days," said Richard Goldberg, now 77, one of the original Fortran team members. The success of the team hinged on two things. First, the group devised a programming language that resembled a combination of pidgin English and algebra. The result was a computing nomenclature that was similar to algebraic formulas that scientists and engineers used in their work. So Fortran opened up programming to the people whose problems were being put on computers in those days. With some training, they were no longer dependent on the computing priesthood to translate their problems into the language of the machine. Professional programmers at the time worked in binary, the natural vernacular of the machine then and now - strings of 1's and 0's. There were also some "assembly" languages. These allowed programmers to write instructions using mnemonic abbreviations - perhaps LD for "load" or MPY for "multiply," followed by a number to designate a data location in the computer's memory. An "assembler" program then translated, or assembled, these symbolic programming instructions into binary. Each assembly language was tailored to a specific kind of computer, and a line of assembly language corresponded to a line of binary code. MR. BACKUS had his team aim for a very different target. The Fortran language focused more on the problem the person using the computer wanted to solve than on the machine's operations. Indeed, a line of Fortran code could translate into many machine instructions, in binary. Fortran moved communication with a computer up a notch, closer to the human and away from the machine. That is why Fortran is called the first high-level language. The other great success of Fortran was that it worked so well. That is, Fortran generated programs that ran as efficiently, or very nearly as efficiently, as the ones hand-coded painstakingly by the programming elite. Machine time was a precious, costly resource. Matching the run-time efficiency of human programmers was thought to be impossible. The I.B.M. team overcame that barrier because of the masterful design of the Fortran compiler. Put simply, a compiler is software that captures the human intent of a program and recasts it in a way that is understandable - executable - by the machine. For his first two recruits, Mr. Backus tapped Irving Ziller and Harlan Herrick, programming veterans, which in the early 50's meant they had a couple years' experience. Mostly, Mr. Backus simply chose people he spotted or who were recommended, people who were bright and seemed to have a knack for programming. Richard Goldberg, a math Ph.D., had just abandoned teaching after a semester at Dartmouth College. He applied for a job at I.B.M. and was hired. "I didn't know anything about computing," said Mr. Goldberg, who excelled in a three-month programming course and was sent to the Backus team. After graduating from Vassar, where she did well in math and science, Lois Haibt was lured to I.B.M. by a starting salary of $5,100, nearly twice the offer from Bell Laboratories. "They told me it was a job programming computers," she said. "I only had a vague idea what that was. But I figured it must be something interesting and challenging, if they were going to pay me all that money." David Sayre, a crystallographer, began to use computers for his biophysics research, and found himself pulled in. "You entered a world that kind of ran the way it was supposed to, a world made for working out the logic of something," Mr. Sayre said. Fortran was presented to the computing world in February 1957 at the Western Joint Computer Conference in Los Angeles. At the conference, I.B.M. arranged for what is known in the industry today as a "demo" - a public demonstration - of Fortran. Shortly before the conference, I.B.M. had asked a few of its customers to come up with real-world computing chores, like calculating airflows for the design of a jet wing. The problems would be given to assembly programmers to code, but also written in Fortran. When the Fortran-compiled programs ran on the computer, they matched the hand- coded programs in terms of running time on the machine. Fortran saved a lot of labor, enabling professionals to program a problem about five times faster than before; it also opened up programming to new practitioners. "It was a revelation to people," Mr. Ziller said, recalling the 1957 demo. "At that point, we knew we had something special." Today, the six surviving members of the original Fortran team are in their 70's. They are far removed from the computer business, but not altogether divorced from software. Mr. Backus conceded that he "couldn't live without" his Palm hand-held organizer, which is many, many times more powerful than the room-size machines of the 50's. Mr. Sayre has returned to crystallography, as a researcher affiliated with the State University of New York at Stony Brook. Like biology, crystallography is increasingly becoming a computational science, relying on fast computers and clever software. "With any luck, crystallography will take on a new life, extending its reach, thanks to the magic of these machines and software," Mr. Sayre said. Copyright 2001 The New York Times Company