Who Invented the Computer? John Backus and FORTRAN
Who Invented the Computer? This is the fourteenth installment in our ongoing series.
As the 1950s dawned, IBM was expanding its market share and offering a few major innovations in computing hardware. One such machine was the 701 Defense Calculator, the world's first commercial scientific computer. The 701's primary function was solving high-level scientific computations for the military, construction, and aviation industries, as well as data analysis.
The 701 was big, consisting of 11 separate refrigerator-sized units. It was also incredibly fast, able to send electrical impulses between its individual units at a speed of one-millionth of a second.
Perhaps predictably, it was also expensive to own, out of reach of all but the largest organizations. As a result, companies who had some serious calculating to do would rent the 701 for the low monthly rate of $16,000, roughly five times the then-average annual income of a male worker in the United States.
In fall of 1952 IBM had orders for six of the machines and, to let buyers know that the 701 was worth the price tag, management invited representatives from the purchasing companies to come to Poughkeepsie, N.Y., to watch a model in operation.
As a demonstration of the 701's capabilities, several of the visiting representatives brought along previously written complex programs to be solved by the device. The first program was entered, a button pushed, and almost instantly a solution printed out.
At first, the buyers were amazed at the 701's speed. Then one asked, "How could anyone possibly write programs quickly enough to keep such a fast computer busy?"
'Combat with the machines'
In the 1950s, the computer industry was picking up speed as universities and large manufacturing companies began recognizing the advantages of enhanced computational power. Every computer came with an inherent problem, however — the only programming language they understood was Assembly Language ("AL"), which consists entirely of the binary values of 0 and 1.
Writing a program in AL meant that even the simplest calculation required code containing hundreds of zeros and ones. Complex programs would include literally millions of 0s and 1s, making the cost of writing software greater than that of buying the hardware.
Assembly Language programs were difficult and time-consuming to write. And because programs rarely function correctly the first time they operate, debugging one could be an absolute nightmare. It's no wonder that programmers of that era often described their jobs as "doing hand-to-hand combat with the machines."
John Backus Didn't Like Programming
John Backus was a mild-mannered computer scientist (employed by IBM) with an intense dislike for writing programs in AL, often complaining of the time and difficulty it required to write one by hand. It was while writing missile trajectories programs to run on the 701 that he began working on a more practical approach to programming.
Backus' goal was to create an easier method of entering equations into computers. His hope was to make programming easier, faster, and less expensive. In 1953, with the support of IBM management, Backus assembled an all-star quartet of researchers in-house.
He soon realized that, as good as his team was, the task before them required even more brainpower. Reaching out to other companies and universities, Backus recruited a number of high-powered mathematicians and engineers noted for out-of-the-box thinking.
For three years, the team was crammed into a small room without wall dividers, ostensibly to enhance collaboration. Finally, in 1956, at a cost of $475,000, Backus' team unveiled FORTRAN, the world's first high-level programming language. FORTRAN enabled the writing of computer programs that ran as efficiently as laboriously hand-coded programs written in AL.
Naming their creation was a challenge, as none of the team members were able to agree what they should call it. Lacking imagination, they ultimately settled on "FORmula TRANslation."
An Immediate Sensation
FORTRAN dramatically simplified programming, reducing the number of programming statements needed to operate a computer by a factor of 20. With FORTRAN, programs were easier to write, easier to read, cost significantly less, and resulted in more reliable code.
The FORTRAN compiler was an immediate hit with scientists, engineers, and anyone whose work required regularly solving heavy computational equations. Its versatility and power soon made it the programming language of choice for the first generation of high-performance computers.
Today, more than 65 years after its emergence, FORTRAN still plays a role in computer programming. While no longer the "go-to" programming language for business, it remains widely used in "computationally intensive" fields such as weather forecasting, fluid dynamics and electrical engineering.
King of the Processor
FORTRAN continues the be one of the leading languages in the area of high-performance computing, as well as the language of choice for programs that benchmark and rank supercomputers. Perhaps the most impressive aspect of FORTRAN, however, is its widely recognized two-decade long reign as King of the Computer Programming Mountain.
Until the mid-1970s, Backus' compiler produced the most efficient and highly-optimized programs available. Think about that: No other programming language since has ever been widely acknowledged as the "best" for more than a year or two.
Backus also made other key contributions to computing and information technology as we know it today. He was a member of the international committees responsible for developing the ALGOL programming languages used to publish algorithms. And Backus and Danish researcher Peter Naur developed the Backus-Naur Form to set parameters for the syntax of computer programming languages.
For his work and leadership in developing FORTRAN, Backus received industrywide acclaim. He also received numerous awards including the W.W. McDowell Award in 1967 for outstanding theoretical and design contributions to computers, the National Medal of Science in 1975, and, in 1977, the ACM Turing Award "for his profound, influential, and lasting contributions to the design of practical high-level programming systems."
Not bad for a guy who always said he was lazy and didn't like writing computer programs.