John Backus

The father of Fortran changed programming forever

Portrait of John Backus

For years, John Backus seemed an unlikely candidate to become a pioneer in any field, much less in advanced computing. As a teenager, he attended an exclusive private high school in Pennsylvania where he spent most of his time finding new rules to break. He moved on to the University of Virginia to study chemistry — but was expelled for poor attendance. He later enrolled in medical school only to drop out after nine months, complaining that medical training focused too much on memorizing concepts.

Eventually, Backus found his true calling in computing, and he is now best known as the father of Fortran, the first widely used, high-level programming language that helped open the door to modern computing. During his 41-year career at IBM, Backus also helped develop the IBM 704, the first mass-produced computer with core memory and floating-point arithmetic hardware, as well as Speedcode, the first high-level programming language created for an IBM computer, and the Backus-Naur Form (BNF), a pioneering notation for describing the structure of programming languages.

“Much of my work has come from being lazy,” Backus once said, with characteristic modesty. “I didn’t like writing programs, so I started work on a system to make them easier to write.”

A young John Backus smiles behind a glass wall with formulas written on it The primary author of Fortran, John Backus
Much of my work has come from being lazy. I didn’t like writing programs, so I started work on a system to make them easier to write.
John Backus The father of Fortran
A gifted problem-solver
Advancing through the ranks of IBM

Backus began his career at IBM purely by happenstance. In 1950, just after graduating with a master’s degree in mathematics from Columbia University, he wandered into IBM’s headquarters on New York’s Madison Avenue, where the Selective Sequence Electronic Calculator (SSEC) — a room-sized electromechanical computer — was on display. Backus mentioned his interest in mathematics to a tour guide and was promptly given an informal oral exam consisting of math brainteasers. He aced the test and was hired on the spot as a programmer, even though he had little idea what programming was.

At IBM, Backus readily applied talents that weren’t always apparent during his academic career — an extraordinary gift for problem-solving, including finding ways to break down those problems into more manageable forms and, above all, a willingness to fail in the pursuit of knowledge. In 1953, frustrated by the complexity and high cost of programming, he assembled a small team at IBM to come up with a better way.

The eclectic group included a chess wizard, a crystallographer, a cryptographer, a researcher from the Massachusetts Institute of Technology, and the only woman on the team, Lois Haibt, who joined straight out of Vassar College and would go on to become an early pioneer in computer science.

The team tackled two fundamental problems: how to make programming faster, cheaper and more accessible to a wider range of users, and how to structure the underlying code to make all that possible. Backus managed with a light hand — he deemed IBM’s rigid yearly performance reviews ill-suited for his team, so he simply ignored the reviews process.

A revolution in human-computer communication

In 1957, the IBM Mathematical Formula Translating System, or Fortran, debuted. It fundamentally changed the terms of communication between humans and computers. What was formerly a laborious task of manually keying in as many as a thousand program instructions for a given problem could now be translated, automated and reduced to only 47 in Fortran.

Fortran quickly became central to addressing a wide range of data-laden problems, from calculating trajectories of airborne missiles and NASA flight patterns to computing complex economic and statistical models. More than six decades after its debut, Fortran is still used in Doppler radar weather forecasts and atmospheric and oceanic studies, as well as in simulating nanoparticles, genomes, DNA and atomic structures.

After his work on Fortran, Backus, along with Danish computer scientist Peter Naur, developed the Backus-Naur Form, a mathematical notation for describing the structure of programming languages. It formally defines the grammar of a language, so that there is no ambiguity as to what is allowed and what is not.

Exhibition entrance for Fortran 25th Anniversary exhibit, with posters of the original Fortran team members hanging from the ceiling Entrance to the Fortran 25th Anniversary exhibit
Red cover of a 1957 manual, Programmers Primer for FORTRAN Automatic Coding System for the IBM 704 A 1957 manual, Programmers Primer for FORTRAN Automatic Coding System for the IBM 704
A highly decorated career
A ‘willingness to fail’

Backus also was a pioneer in functional programming (FP), a system of programming that focuses more on describing the problem a person wants the computer to solve and less on giving the computer step-by-step instructions. FP sought to overcome the limitations of the word-at-a-time style of conventional programming by combining forms for creating programs to build still higher-level ones. Languages like Java and Python are increasingly adopting concepts derived from functional programming, and newer languages like Haskell are going completely functional.

From 1963 through his retirement from IBM in 1991, Backus was an IBM Fellow at the research facilities in Yorktown Heights, New York, and San Jose, California. He received the National Medal of Science for pioneering contributions to computer programming languages, the first IBM employee to win the award. He also received the prestigious ACM Turing Award, and even had an asteroid named in his honor: Asteroid 6830 Johnbackus.

Backus died in 2007, at age 82. He left a legacy not only as a pioneer in making programming faster and more accessible, but also as a researcher fearlessly committed to the process of trial and error. 

You need the willingness to fail all the time. You have to generate many ideas only to discover that they don’t work. And you keep doing that over and over until you find one that does work.
John Backus The father of Fortran
John Backus standing in front of the operator's console and central processing unit of the IBM 704 Electronic Data Processing Machine John Backus standing beside the IBM 704
Related stories
Red cover of a 1957 manual, Programmers Primer for FORTRAN Automatic Coding System for the IBM 704
Fortran
The world’s first programming language standard opened the door to modern computing
The L-shaped Electronic Analytic Control Unit with operator console and card reader of the IBM 701 in 1952. This unit controls the machine, accepting information stored, discerning if such information is an instruction or otherwise.  The arithmetic unit performs addition, subtraction, multiplication, and division.  The panel is the means by which the operator can communicate with the machine.  Card Reader at right.
The IBM 700 series
Establishing IBM’s reputation in the mainframe market — and the electronics industry at large
The IBM Research building in Yorktown Heights, New York.
Origins of IBM Research
IBM has always provided its scientists the freedom to explore and discover solutions to society’s greatest problems