The great machine theory of history

Steve Jobs. The world of computing and computers is filled with strong individuals, who have left a lasting influence upon the field, and it is often tempting to write our histories around them. We often shape our views around the careers of Thomas J. Watson of IBM, Bill Gates at Microsoft or even Linus Torvald of Linux. This style of historical pursuit is known as the “Great Man” theory. The term was popularized by the English philosopher Thomas Carlyle in a series of lectures he delivered in 1840. Although his ideas became widely popular, the term “great man” was something of an anachronism even then. Even though a woman was the head of British state, Carlyle would not concede that a woman might be a Great Person. To avoid this difficulty, as well as a few other of Carlyle’s ideas that seem painfully dated, we will develop a great machine theory of history.1 The writers for this journal have devoted considerable time and attention to identifying great machines and great pieces of software. Such a list would certainly include John von Neumann’s computer at the Institute for Advanced Study, the ACE Pilot, the PDP 1, OS/360, Cobol 64, and the TCP Internet protocol, to name a few. This list is not intended to be exhaustive and no one should take offense if a favorite item was excluded. In interviewing computer scientists, I have often found that they cherish a certain machine or specific piece of software that would never make it onto our “great machine” list. In my own career, the Burroughs MCP operating system is far more important than it should be. It was not the first operating system I had seen, but because it’s simple, accessible, and adequately generalizable, I was able to make it a model for how an operating system should work. It was written in a high-level language, a variant of Algol called NEWP. I spent many hours poring over the source code listing to learn how it operated. For many contributors to these pages, their Great Machine or Great Software embodied just those principles: simple, accessible, yet general enough to serve as a model for later work. Although some of these products are identified with a single individual, they are in fact the product of a team. One person conceives it, another builds, a third manages, someone else finances, and a final person markets the product. The anthropologist Jared Diamond has articulated what he calls “the Anna Karenina Principle” as a tool for understanding social organizations. From Tolstoy’s great novel he quotes the opening line, “Happy families are all alike; every unhappy family is unhappy in its own way.”2 From this, he draws the lesson that all marriages (or social organizations) have to be successful at a number of things. They must get along socially, manage money well, have similar goals, and so on. Failure in any one of these areas means that the marriage will fail. Applying Diamond’s ideas to Great Machine theory, we can see at this vantage point in history, perhaps much more clearly than we could see even 10 or 20 years ago, that Great Machines and Great Software are produced by successful organizations. Our history is littered with products that failed because of bad financing, poor marketing, weak management, incomplete conception, or sloppy implementation. Great products are produced by great teams, or at least by teams on which a few members have some vision and the rest are at least adequate. This line of reasoning leads us to a somewhat negative answer to the question, What difference can an individual make? An individual can fail to meet a deadline, misguide an organization, or fail to see all the consequences of an idea. By this standard, all one individual can do is to keep a project from failing. It is, without question, an unfair way to characterize the contributions of talented men and women, but from a longer perspective on the first decades of the computer era, a perspective perhaps not gained for another hundred or so years, we will be impressed by the extent to which the design and operation of computers, software, and networks were a team effort. We will be equally impressed with the fact that these teams worked so well. Of course it is easy to make a hero of the team. When Tracy Kidder followed the development of the Data General Eagle computer in the late 1970s, he concluded that the project was successful because the designers worked well as a team. He dismisses conventional ideas about managerial control and economic motivation. Though he acknowledged that most managers would view the project as a triumph of entrepreneurial direction, Kidder states that it “seems more accurate to say that a group of engineers got excited about building a computer.” Kidder spent more than a year with the group, learning how they made their plans, did their work, and built the machine. The team consisted of young designers: “a dozen young neophytes, fresh from graduate schools of electrical engineering and computer science.” Data General management gave the team great latitude and authority in designing the computer, yet, at the same time, they demanded much. “You agreed to forsake, if The Great Machine Theory of History