The passing of two leaders. . .
Dennis Ritchie & Steve Jobs
Conrad Weisert, October 14, 2011
That Was Then
Our profession, whether you call it "Computer Science" or "Information Technology" is young in comparison with the traditional sciences. When many of us entered the field nearly every well-known innovator was still alive and active. They were writing books and articles, presenting papers, and teaching. When we attended a conference we'd actually meet them and might go out to dinner with them. We could reach them on the telephone or later by E-mail when we had a question or comment for them.
and This Is Now
Alas, that era is drawing to an end too quickly. The pioneers whose names are attached to algorithms, to techniques, to programming languages, or to products are leaving us at what seems like an accelerating rate.
We've just lost two more, men whose contributions were very different but who each had a major influence on the way we work today. The creations of one exceeded by far what he could have imagined. The creations of the other are exactly as he imagined.
Dennis Ritchie (1941-2011)
Main memory, even on million-dollar mainframe computers, was measured in kilobytes. Mini- and micro-computers were still a novelty to many computing professionals. AT&T Bell Laboratories was among the organizations that recognized early a need to use smaller machines.
To avoid the chaos of individual operating systems for every model small computer Bell Labs pressed for a common system architecture to be called UNIX. Unlike the huge MULTICS time-sharing system, serving many users from an IBM 360-67, UNIX would serve a single user on a dedicated micro-computer.
To develop UNIX, however, required a new programming language. MULTICS had been developed in PL/I, but PL/I was too big to fit on micro-computers, both for compiling and for executing the generated code. Machine-specific assembly languages were ruled out. The compiler had to be very small. The generated code had to be very efficient, and when necessary for specialized hardware control, close to the machine.
After various experiments (A and B) Ritchie's team at Bell Labs settled on C. With Brian Kernighan, he published a little book The C Programming Language.
It's doubtful that Kernighan and Ritchie intended to propose C to the world as a general purpose programming language. It had served its intended purpose well in successfully implementing UNIX on a wide range of machine types. As a general-purpose programming language it had serious flaws and omissions, and was extremely error-prone. But the book was so well-written that it became a best seller, and C went on to form the basis of a family of languages, C++, Java, and C#, each of which, with its essential libraries, is now many times larger than the PL/I that Bell Labs had found too big and complicated. But the machines have compensated. Many of us have more computing power in our homes than AT&T Bell Laboratories had in its offices when Dennis Ritchie's team was inventing C. Could Dennis Ritchie have imagined that?
Steve Jobs (1955-2011)
The tributes in the popular press to the co-founder and guiding CEO of Apple Computer have few if any precedents:
Much has been made of the ease of use of the MacIntosh line. Most of that reputation, however, originated in Apple's own advertising: ("Our users train themselves."). I own a recent MacIntosh, and I'm using it to write this article and post it on the Internet. The MacIntosh is my main Internet access computer, not because it's easier to use (it isn't), but because it appears to expose fewer "vulnerabilities" to malicious programs. That's worth a great deal, and if Steve Jobs was responsible for that one property of my machine, I'm sincerely grateful to him.
Apple Computer is moving on in the post-Jobs era. The direction he set, however, will endure for quite a while.
Last modified October 14, 2011
Return to IDI home page