The Evolution of Software: A European PerspectiveJanuary 14, 2006
The 2005 Colloquium on History of Computing: Software was held at CWI, the national research institute for mathematics and computer science in Amsterdam, the Netherlands, June 20–24. The event brought together historians of computing from across Europe to discuss a variety of issues concerning the evolution of software and of the software industry.
As one of two keynote speakers, I gave a talk titled "Free As In Software: The Forgotten Mathematical Origins of Open Source Software." This was the first public presentation of results of my work as a historical consultant to SIAM, assisting with a project funded by the U.S. Department of Energy to document the early history of scientific computing and numerical analysis.
As part of that work, I am about to conclude a series of twenty-three career-spanning oral history interviews with key producers of numerical mathematical software. Transcripts of these interviews will soon be available online, together with a number of other resources and interviews conducted by other project participants covering other topics in the history of numerical analysis. Among the interview subjects have been Cleve Moler, John Rice, Jack Dongarra, William Kahan, and Brian Ford.
Based on this research, and on my visits to consult archival records stored at the Charles Babbage Institute and the Smithsonian, I suggested in the talk that projects as early as the SHARE user group software library of the 1950s displayed all the formal and many of the social characteristics associated with today's open source software projects. Even when commercial libraries and high-quality packages became available in the 1970s, the lines between products and free software remained quite fuzzy. This challenges general assumptions that the open source model was entirely novel when introduced for systems software in the 1980s. In a three-day workshop at the University of Amsterdam prior to the public sessions, I had the chance to discuss my work on this and other topics with a small audience of faculty and graduate students from Germany and the Netherlands.
Several other speakers at the colloquium touched on matters that would be of interest to many SIAM members. In the workshop's other keynote talk, Michael S. Mahoney of Princeton University summarized several of his recent research directions. Taking a long perspective, Mahoney, who is well known for his work on seventeenth-century mathematics as well as for his contributions to the history of computing, suggested that computerized modeling techniques have created new conceptual challenges in explaining the relationship between models and reality. Whereas the approaches pioneered by Newton allowed scientists to reason mathematically about the models they created and to define correspondences between the internal workings of the models and the natural world, the algorithmic techniques used today have (like other computer programs) largely defied formal reasoning about their functioning and often have no clear relation to mechanisms found in nature.
In "Mathematical Traditions in Computer Science in Munich," Matthias Hamm, a graduate student at Technische Universität München, discussed the early history of Fritz Bauer's contributions in establishing computer science in Germany. Hamm documented Bauer's early work in numerical analysis, and suggested that his transition into the emerging discipline of computer science was more gradual than previously assumed.
Other speakers covered a variety of topics in the history of software in Europe. Adrienne van den Bogaard (Technische Universiteit Delft) contrasted the careers of two Dutch computer scientists: Edsger Dijkstra and William Louis van der Poel. Both were supervised by van Wijngaarden and became prominent members of the Dutch computing community during the 1960s. According to van den Bogaard, Dijkstra's view of programming as a form of mathematical practice, concern for theoretical rigor, and individualistic mindset ultimately may have brought him greater fame and recognition. In contrast, van der Poel's interest in language design for efficiency on particular architectures and his participation in team projects reflected a view of programming as engineering rather than mathematics.
Among the most memorable papers was that of Frank Veraart, whose dissertation in progress at Technische Universiteit Eindhoven examines the early history of personal computing. In his talk at the colloquium, he explored the use of broadcast radio networks to transmit home computer programs during the 1980s, and the accompanying development of a standard BASIC dialect known as BASICODE. Pierre Mounier Kuhn of Université Paris–Sorbonne (Paris IV) explored the early history of the software and services industry in France, with particular attention to the role of service bureaus. Other speakers explored topics as varied as the history of the Java programming language, the origins of the ERP software industry, and the history of successful and unsuccessful startup firms in the field of digital payment technology.
The workshop was organized by Gerard Alberts, whose vigorous promotion of the history of software in the Netherlands has encouraged the emergence of a growing scholarly community and created a web of international contacts. Alberts also presented a paper, "Soft and Ware: A Brief Comment on the Emergence and Content of Software," in which he urged scholars to pay more attention to the physical aspects of early programming practice and to the emergence of programs as "wares" or economic artifacts.
Support for the workshop and for accommodation and tickets for the presenters was provided by the NWO, the Dutch Science Foundation.
Thomas Haigh is an assistant professor in the School of Information Studies at the University of Wisconsin, Milwaukee.