Since the first Turing Award in 1966 (Alan J. Perlis) until the last one at the time of this writing (Robert Metcalfe), there have been four laureates related to database technology. First, Charles W. Bachman in 1973, for “his outstanding contributions to database technology.” Then, Ted Codd in 1981, for “his fundamental and continuing contributions to the theory and practice of database management systems.” Third, Jim Gray in 1998 for “seminal contributions to database and transaction processing research and technical leadership in system implementation.” Finally, Michael Stonebraker in 2014, for “fundamental contributions to the concepts and practices underlying modern database systems.” This month’s Vidéothèque article will precisely showcase Mr. Stonebraker’s acceptance speech.
(First, and without offense to the maintainers of the Turing Award website, I would recommend to download a copy of the video using youtube-dl or other similar tool. The video player on the Turing Award website is unfortunately quite rudimentary and prone to playback interruptions.)
This video is not the typical acceptance speech. Mr. Stonebraker breaks the mold with a simple mechanism: by telling three intertwined stories. First, the story of Postgres. Second, a 60-day bicycle trip through the United States, from the mountains of Washington through the winds of North Dakota to the shores of Maine. And third, the upheavals of an entrepreneur trying to build a business around database technology during the 1980s and 1990s.
Postgres started as a rewrite of Ingres, with the objective of creating a database system for something other than business data processing, and more specifically, useful for geographic information systems, and image processing tasks. This work led to the introduction of abstract data types (boxes, polygons, lines, points, etc.), user-defined operators (like “overlaps” in the case of geographical information), and user-defined functions. Doing such work implied various unforeseen challenges, among which the creation of suitable indexes, query optimizers, and the like.
Michael Stonebraker then references the work of C. J. Date, whose 1981 paper on referential integrity brought foreign and primary keys to the table. Postgres built on these concepts to introduce triggers, akin to database events, and other innovations. He continues with a discussion of crash recovery tactics, to prevent Murphy’s Law from happening, and providing some interesting tidbits of software engineering information–in particular, that “writing in Lisp was a disaster”.
Mr. Stonebraker is a pragmatic businessman, something quite unusual in a Turing Award winner, as reported by Forbes magazine in 1996:
For the next five years he wrote papers on relational databases. He also wrote software to prove they could work. With two Berkeley colleagues, Stonebraker raised money from venture capitalists in 1979 and found some executives to handle the business end. The experience was exhilarating.
The commercial world is a great reality check for ideas.
“You had enough money to get things done. You could hire ten people to write the code. You got to talk to real customers about real problems.”
Speaking about business, in the “Oral History of Michael Stonebraker” by the Computer History Museum, Mr. Stonebraker exposes his opinion about some captains of our industry:
But I think both he (Larry Ellison) and Bill Gates have given the entire software industry a very bad name, because I say, the other thing about Oracle is that essentially to this day, and it’s gotten better in recent years, they QA their product very poorly, and so no serious person will touch Oracle for at least a year after it initially comes out because the early customers do the Oracle QA. So, both companies release buggy products that I would not feel comfortable putting into the marketplace.
Ouch. And to add insult to injury, Oracle databases are now available on Microsoft Azure.
Anyway, back to Postgres. After changing the query language from QUEL to SQL, the commercial version of Postgres called Illustra was finally sold to Informix, and later on to IBM, where it is apparently still available at the moment of this writing.
What philosophy does Michael Stonebraker follow? Simply put, just “make it happen.” Whether a PhD, a business venture, or an open-source software project, get up in the morning, and do what you have to do to reach your goals.
At the end of his speech, Mr. Stonebraker references another talk referred to as the “test-of-time talk,” given at the ICDE 2015 conference, and available on YouTube. The key message is another of his eternal mantras, in this case, “one size fits none.”
However, in my opinion the important legacy of Postgres is its abstract data type (ADT) system. User-defined types and functions have been added to most mainstream relational DBMSs, using the Postgres model. Hence, that design feature endures to this day. (…)
It should also be noted that much of the importance of Postgres should be accredited to the availability of a robust and performant open-source code line. This is an example of the open-source community model of development and maintenance at its best.
Following these observations, Mr. Stonebraker finishes his talk daring to selflessly detach himself from PostgreSQL, generously mentioning the 39 students who wrote Postgres, and the very talented system programmers that allow it not to crash or show a blue screen, something that, as he rightly points out, must never happen. We will not let you do that, Michael. Postgres and PostgreSQL are a major triumph of design and technology, and to a large degree thanks to you.
Cover snapshot taken by the author.