% fortune -ae paul murphy

The origin of Unix

Almost everyone thinks that Unix originated with Thomson, Ritchie, and others at Bell Labs in 1969/70, and that's correct but not true. They wrote the first code, originated many of the technologies in Unix, enunciated key design ideas we're still exploring today, and demonstrated the effectiveness of the community and user centric ideas characterising the best in open source today - but they did not invent Unix.

Unix is (trademarks and legal stuff aside) a set of ideas and the products we think of as Unix merely implement some subset of those ideas.

The key ideas are hard to delimit, and correspondingly hard to trace over time - but we can trace the application of some of them to computers to a long running argument that took place predominantly at MIT during the late 1950s and early sixties.

On one side were the people who saw in computing the opportunity to replace people. Backed by IBM, and mostly from the data processing tradition, these people saw the payoff for digital computing predominantly in terms of using computers to do things humans can do, but do them faster, for less money, and more accurately.

On the other side were the people who saw computers as extending human abilities - particularly in terms of computation, memory, and communications or community.

See Captain Cyborg and the problem of evil for more on this.

At MIT these people eventually won the design war, meaning that as early as 1965 Corbató and Vyssotsky, co-designers of the Multics operating system kernel, were able to enunciate their commitment to extending academia's traditional open source agenda into the digital age:

It is expected that the Multics system will be published when it is operating substantially...Such publication is desirable for two reasons: First, the system should withstand public scrutiny and criticism volunteered by interested readers; second, in an age of increasing complexity, it is an obligation to present and future system designers to make the inner operating system as lucid as possible so as to reveal the basic system issues.

Unfortunately they lost the implementation war - with control of the development work contracted to people whose experience and agendas came mainly from the data processing side.

When you hand implementation of the core Unix ideas to a group of mainframers what you get is conflict, development delay, senior (but uninformed) management attention and correspondingly bad decisions, cost over runs - and, given enough money, an ultimate compromise: Multics.

Unix as we know it evolved in response to the Multics development fiasco and was an affirmation of, not a rebellion against, the underlying ideas. Here's my favourite quotation from Ritchie's "The Evolution of the Unix Time-sharing System":

From the point of view of the group that was to be most involved in the beginnings of Unix (K. Thompson, Ritchie, M. D. McIlroy, J. F. Ossanna), the decline and fall of Multics had a directly felt effect. We were among the last Bell Laboratories holdouts actually working on Multics, so we still felt some sort of stake in its success. More important, the convenient interactive computing service that Multics had promised to the entire community was in fact available to our limited group, at first under the CTSS system used to develop Multics, and later under Multics itself. Even though Multics could not then support many users, it could support us, albeit at exorbitant cost. We didn't want to lose the pleasant niche we occupied, because no similar ones were available; even the time-sharing service that would later be offered under GE's operating system did not exist. What we wanted to preserve was not just a good environment in which to do programming, but a system around which a fellowship could form. We knew from experience that the essence of communal computing, as supplied by remote-access, time-shared machines, is not just to type programs into a terminal instead of a keypunch, but to encourage close communication.

Thus Unix, the product, originated as advertised at Bell Labs, but Unix, the set of ideas, goes back to ancient Greece and the city philosophers, takes root in the the post depression expansions in technology and communications in the United States, and were first expressed in terms of computer technology during the Multics design battles in the early sixties -and, bottom line, Unix now is largely what Multics set out to be then.

Paul Murphy wrote and published The Unix Guide to Defenestration. Murphy is a 25-year veteran of the I.T. consulting industry, specializing in Unix and Unix-related management issues.