print · source · login   

Dear Mr Foer,

With much interest I have read your book “World without mind”. I agree with many of your conclusions! But as a computer scientist who has been working on algorithms for more than 30 years, I am also deeply troubled by one paragraph in your book:

“For the first decades of computing, the term “algorithm” wasn’t much mentioned. But as computer science departments began sprouting across campuses in the 60s, the term acquired a new cachet. Its vogue was the product of status anxiety. Programmers, especially in the academy, were anxious to show that they weren’t mere technicians. They began to describe their work as algorithmic, in part because it tied them to one of the greatest of all mathematicians – the Persian polymath Muhammad ibn Musa al-Khwarizmi, or as he was known in Latin, Algoritmi. During the 12th century, translations of al-Khwarizmi introduced Arabic numerals to the west; his treatises pioneered algebra and trigonometry. By describing the algorithm as the fundamental element of programming, the computer scientists were attaching themselves to a grand history. It was a savvy piece of name-dropping: See, we’re not arriviste, we’re working with abstractions and theories, just like the mathematicians!”

Do you have historic sources for these strong statements?

Much of computer science is rooted in the work of mathematicians and logicians such as Turing, Church and von Neumann. These researchers used the word “algorithm” already before computers were built, see for instance p349 of Alonzo Church’s 1936 paper “An unsolvable problem of elementary number theory”. Together with Turing’s 1936 paper “On computable numbers, with an application to the entscheidungsproblem”, this paper forms the basis for the so-called Church-Turing thesis, which in turn laid the foundation of theoretical computer science. The computer science pioneers definitely knew the term “algorithm”!!

The term “algorithm” was maybe not used so often by computer scientists during the initial years (often they used terms such as “effective procedure” or “computable function”), but that certainly changed in 1958 with the influential work on ALGOL (short for Algorithmic Language), a family of imperative computer programming languages. The researchers who worked on Algol e.g. Bauer, Backus, Dijkstra, Perlis, Naur, van Wijngaarden & McCarthy were established scientists who definitely did not suffer from “status anxiety”. Backus, Dijkstra, Perlis, Naur and McCarthy later received the Turing award, the major prize for computer science research, for their groundbreaking research.

In order to appreciate the wonderful scientific work on algorithms, I can recommend you, for instance, to read the book Algorithmics – The spirit of computing by David Harel. I hope that, after studying this book, you will be also convinced that the fact that programmers used the term algorithm is not a form of name dropping. The work on algorithms since the advent of computers very much fits into the tradition of the work started by great scientists like Euclides and al-Khwarizmi.

Scientific knowledge may always be used for both good and bad things. Like you, I am very concerned about the use of algorithms by Google, Facebook, Apple and Amazon. But I disagree with any suggestion that there is no science behind computer science algorithms!

Looking forward to your reaction, with best regards,

Frits Vaandrager

Professor of Computer Science at Radboud University

Nijmegen, December 4, 2017