Would You Call Edsger Dijkstra “Popular”?

Paul Ford discusses the nameless obscurity of software designers, and some exceptions to the rule:

A few authors of software do not remain faceless, like Richard Stallman, who created the Emacs text editor and the GCC compiler, Donald Knuth, who created TeX, Larry Wall, the developer of Perl, or Guido von Rossum, the developer of Python. Most of these men (always men!) did their work below the interface, as designers of languages and systems, creators of tools that allow creation. To write a language, to abstract the computing process into a fundamental sequence of tokens which will be internalized and applied by others, is an individual act; thousands may add libraries, but Python is still Guido, Perl is still Larry, Emacs is RMS, and TeX is Knuth. The experts of abstraction who are able to catch into some zeitgeist do not lose their identities as their products become popular; their faces are not replaced by buttons. They exist in a textual realm of code, as authors of fundamental texts.

I would go further and argue that these exceptions have very little to do with the nature of what these people worked on and more to do with the cults of personality generated by the internet, and more specifically, the open-source movement. In its day, VisiCalc was a force majeure amongst software, in large part giving people a reason to buy the $3000 3.77 MHz IBM PC, and making its authors Dan Bricklin and Bob Frankston minor demigods. The restrictions on size and function of software made it much easier for people to singlehandedly code revolutionary, or even just useful projects. He may not have changed the world, but Bert Kersey of Beagle Bros will remain a more meaningful name to me than any of the authors of the Top Ten Algorithms, if only for the cool PEEK and POKE chart for Applesoft Basic that he included in his packaging.

Even at that time, there was a split between the obsessive hobbyists like Kersey and even Bricklin and Frankston, and the DARPA-funded academic work that was used in constructing and running ARPANET. Jon Postel, nominal leader of the TCP/IP design effort, and the group he led have undoubtedly had more of a technical impact, but that hasn’t exactly translated into “popularity.” (To paraphrase an old saying, “Would you call God popular?”) Certainly at the time, Bricklin and Frankston had a much greater cultural impact, but they were playing a different game with different rules for fame. Standards efforts like TCP/IP, then and now, do not generate celebrities, but they do occasionally help to produce the zeitgeist, rather than just catch it. The same could be said for a research project like NCSA Mosaic, which had the biggest breakout since ARPANET.

Ford relates fame to the type of code at issue. Ford gives a fairly heterogeneous set of examples. Consider:

(1) Python is a clean object-oriented scripting language that takes some of the better ideas from some heavy-duty lower-level languages and puts them into a useful package.
(2) Perl is a huge mishmash of several earlier scripting languages (awk, sed, and assorted Unix shells). It may be, in the words of a professor, “the worst designed language ever,” but it’s very, very useful for text processing, among other things. Wall gave the people what they wanted, and who cares if the seams show?
(3) Emacs is a super-powerful text editor that contains its own implementation of LISP and can (and has) be extended to do just about anything. For Unix junkies, however, it has yet to fully supplant lean-and-mean text editor vi.
(4) TeX is a markup language that allows for detailed formatting of documents and can be compiled into Postscript, etc. It is the standard in academia for computer science papers.

Yet their authors do have a kind of celebrity, Stallman and Wall in particular. But their fame seems directly to the extent to which they are involved in the hobbyist side of the equation. Even Knuth sunk far more effort and time into supporting and promoting TeX than a computer science professor committed to an authoritative seven-volume history of computer algorithms could ever be expected to do. Likewise with Wall, who got out there and sold (metaphorically speaking) and supported Perl in a way that the authors of sed and awk never had. It makes them culturally significant, but they also run the risk of becoming more famous, less hermetic versions of the forgotten figures of Steven Levy’s Hackers, a weird, weird book that deserves an entry of its own for its uneasy combination of geek worship and technological revolution. These people have indeed wrestled the zeitgeist, but their code, for the most part, is not fundamental: it is ephemerally contemporary.

The situation puts authors of algorithms and low-level abstractions like assemblers in a bad spot, since they can’t really “sell” their work. The easiest way, it seems, is to work your name in somewhere. Academic decorum prevented Anthony Hoare from calling top-ten algorithm quicksort “Hoaresort,” but Linus Torvalds has most of his name in Linux, and though the kernel is a tiny percentage of the code, the OS will always be identified with him. It’s a funny sort of fame though, since all I know about the authors of the Lempel-Ziv-Welch (LZW) compression algorithm is that their names are Lempel, Ziv, and Welch.

Leave a Reply