FORTRAN, the Gladys Knight of Languages
There’s an old geek joke that programming languages are like women. LOGO, the simple language that allows you to make a little glowing “turtle” walk across your screen, is a grade school art teacher. She shows you how to put pencil to paper and is a boy’s (or girl’s) first crush. C++, the technician’s language, is a lady executive, all business but with a whiff of danger and intrigue. BASIC, the language most programmers start out working in, is the divorcee next door. I’ll let you fill in the rest.
In his new book Go To, Steve Lorh, technology writer for the New York Times, lets us take this analogy one step further. This uneven but important look at the history of programming makes it clear that programming languages aren’t just like women. They’re like women rockers, all flash and fire, ready to kick ass. And you thought computer science was boring.
Lohr starts out with FORTRAN, the Gladys Knight of languages. It’s classy and from a different era, but it started it all. In the early years of computing, programmers had to work with punch cards and write in machine code, a bare metal protocol that required immense patience and prodigious problem-solving skills. FORTRAN was the first “high-level” language, written by a rag-tag band of IBM programmers led by John Backus.
The team wanted a “different way” to program. They were tired of ceding all of the power to the high priesthood of machine coders who ministered to the early machines like the Priestesses of Apollo bathing the Delphic Oracle.
FORTRAN was borne of a backlash against the old guard, and the first real programming language was born. What came next was a flurry of languages: Motown knock-offs like COBOL, SNOBOL, Simula, PROLOG. Then the sixties came and big iron like IBM’s OS/360 mainframe computer fell into the hands of the hippies at Berkley and Bell Labs. Longhairs looked at programming and pronounced it uncool. It couldn’t do the things they wanted to do: play games, run big telephone switches, play games, sort immense amounts of data, play games.
The language C was Janis Joplin. It was earthy and powerful. It encouraged to take a little piece of its heart. Created by Bell Labs scientists Ken Thompson and Dennis Ritchie, C knew that freedom was just another word for nothing left to lose.
Oh yes, C was powerful to a fault, allowing you to control the underpinnings of the computer and alter parts of the system that normal languages only hinted at touching. The hoary operating system Unix, that Thompson and Ritchie were forced to use, begat C. C begat C++ (the Belinda Carlisle of this crew). C++ and its ilk begat Linux, leading to the modern era.
Lohr sees the creation of languages like Java and the open source movement as a mix of European and U.S. influences. Java is the Shirley Manson of languages, full of rich imagery and the ability to mix and match from the rest of the cannon to create something completely different.
Java, created by Sun Microsystems, is a language that can run on any computer, anywhere. Originally designed to run on industrial machines like drill presses, oil rigs, and toaster ovens, the language grew to become a popular web favorite. Lohr particularly focuses on Java’s object-oriented roots, meaning that the language is written like a child’s set of blocks. Each block interacts with the other in a myriad ways, letting you build cool stuff after hours of play.
Lohr’s book rolls through language after language, stopping on the way to talk about Microsoft Word and the Macintosh GUI before making an end-run into Linux, the Björk-like free operating system written by a bored Finn, Linus Torvalds. Although the book drags in places, the story is compelling even for the casual reader. The story of computer languages is really the story of rock ‘n’ roll. It’s the story of the exodus out from under the iron fist of early computing Rat Pack. The industry paused occasionally to pop out a few one-offs and B-sides, including Microsoft’s Aguilera-ish Visual Basic and the Tori Amos of programming languages, Perl, but the goal was always the promised land of computing: the world of idiot proof programming, allowing everyone to make beautiful music together.