As the years went by, I became convinced that the influence of automatic computers in their capacity of tools would only be a ripple on the surface of our society, compared with the deep influence they were bound to have on our culture in their capacity of intellectual challenge to Mankind that was totally without precedent.
—Dijkstra, personal notes, 1975
This special issue of the Annals gives a selection of the best papers presented at the MEDICHI (Methodic and Didactic Challenges of the History of Informatics) 2007 workshop, held in Klagenfurt, Austria. The focus of the workshop centered on the issues of the methodology and didactics of the history of informatics. The workshop was organized by the Austrian Society for the History of Informatics (OEGIG), the Austrian Computer Society (OCG), and Klagenfurt University.
The keynote papers of Michael S. Mahoney, Niklaus Wirth, and Joseph Weizenbaum are featured here with slight modifications. The selected full papers of Roland Mittermeir, Horst Oberquelle and Oskar Beckmann, and Peter Antonitsch et al. have been considerably modified and extended. The sidebar, "In Memory of Joseph Weizenbaum,"
pays tribute to this computing pioneer, who died in March and will be greatly missed.
Why 'history of informatics'?
The history of informatics (of computer science) is a thriving subject, yet is barely credited as an academic discipline. The existing body of historical literature, although small, includes some brilliant contributions, especially biographical and technological chronicles, as well as some excellent anecdotal treatments. Nevertheless, the methods and didactical approaches for examining the history of informatics are poorly developed; the number of conferences and journals dealing with these issues is few, as is the number of young scientists conducting scientific research on the history of informatics. This is not because these topics are uninteresting or irrelevant; rather, the conditions for methodically well-founded research—acceptance as true science—are lacking. The motivation of this special issue is to contribute toward making the "history of informatics" an accepted science and a valued component of informatics education and research.
The history of informatics has both internal and external questions. An internal question can be answered by looking only at informatics itself; the external (or interface) questions relate to the interaction between informatics and the rest of the world (for example, other sciences). The external questions are obviously more general, and more interesting for the layperson, but cannot be answered without a thorough investigation of internal questions. The most relevant external questions might be these:
• Where do the ideals of computing science come from?
• How does the development of computing science influence our ideals?
In some cases we are more interested in the first question; in others, in the second. For example, it is interesting to ask: which external inspirations played a role in the emergence of software engineering? The influence of the latter on the rest of the world might be less interesting, at least from a theoretical point of view. On the other hand, in the case of digital media, the really thrilling question is related to digital media's influence on our habits of reading and learning.
Quite a lot of effort has been invested in technology assessment, into analyzing the past and predicting the future consequences of technological development. An equally interesting, but far less investigated, question is where do the ideals of technical development come from? In the everyday practice of computer scientists we get our ideas mainly—to be honest—from each other. Researchers read each other's papers; sometimes we are also involved in industrial projects, which offer somewhat different questions. Based on these interactions, technology produces an impressive development in rather small steps. However, at certain times, some ideas emerge that are regarded as revolutionary and that do not represent just small modifications (mostly, but not always, improvements) of the actual state.
For example, the idea of structured programming—later rephrased as software engineering—was inspired by the ideal of elevating computer programming to a science, to a discipline that is as sound and exact as theoretical physics and as effective, in terms of results, as traditional engineering. I think it is fair to say that this ideal has never been reached, not even approximately. Why? An answer that computer scientists are not as smart as physicists or mechanical engineers is hardly satisfactory, nor would that be true. The reason lies deeper in the nature of creating software and in the varied usage of computers in everyday life. Scientific analysis of such a question could give insights into the nature of computing science. In fact, similar questions have been posed by many exponents of software engineering. To the best of my knowledge, however, such questions have been aimed at finding arguments for the questioner's own work. Methodically correct, historical research should address such a question without favoring an actual technique.
Let us consider the possible steps of such research on the example of structured programming. These steps might well include the following:
1. Analyze software development techniques in use before the concept of structured programming emerged.
2. Summarize the essence of proposals made by Dijkstra, Hoare, Dahl, and many others in order to agree on a more disciplined way of programming than before.
3. Look for alternative, already forgotten proposals of the same period.
4. Try to reconstruct the discussion on this topic—including the implicit, less obvious threads of discourse.
5. Figure out the reasons for the acceptance and rejection of ideas—not only the obvious, verbal ones, but also hidden, political, economic, and psychological motivations, interests, suppressions, and so on.
6. Analyze the current situation in light of insights gained in earlier steps.
7. Deduce predictions and proposals for future development.
8. Give examples—understandable by nontechnical people, especially politicians and managers (including science managers)—that explain the consequences of ignoring recommendations for implementing structured programming versus following those recommendations.
9. Find analogies with other sciences and the humanities.
This list is neither exhaustive nor can it be followed sequentially. It is an example for a possible research guide addressing the initial question of where the ideals of computing science come from. We can find a similar list if we explore the opposite question: How does the development of computing science influence our ideals? We could presumably develop a merged list for both main questions. Nevertheless, I refrain from this in order to resist the temptation of overabstraction—a typical occupational disease of computing scientists.
Didactic issues are interesting in a double sense: First, How do we teach the history of informatics? And second, How can we improve teaching of informatics by relying on knowledge in the history of informatics? A third question could be, How do we integrate the history of informatics into other subjects, such as history, sociology, and so forth?
To answer the first question is much harder than it might seem. As long as the history of informatics is not a real science, as long as we lack a more or less accepted methodology, the question is almost impossible to answer. Moreover, it is uncertain that the history of informatics should be taught as a series of separate courses. What is more important is to integrate a historical view into technological courses.
The second question, on how we can improve the teaching of informatics by taking a historical view, I have discussed in detail elsewhere. 1
The essential points, however, are as follows.
• A historical view can give informatics a human face. Instead of speaking about technologies, products, and so on we can speak about people and their ideas.
• By showing different—often complicated—ways of historical development, we can encourage excellence in critical thinking. We can show students that, first, ideas do not spring fully formed from nowhere, they need people; second, even good ideas may disappear—often worse ideas conquer better ones; and finally, everybody can have excellent ideas and, therefore, change the history a bit.
• We can relate informatics to other sciences.
• We can address a number of external issues, especially ethical ones, such as the responsibility of people in addressing informatics.
Computers have become a part of our culture; they—not the machines themselves but rather our way of dealing with them—have influenced both our everyday life and our way of thinking to an extent, which, as Dijkstra said, is "totally without precedent." This phenomenon is interesting, and the history of computer science (or informatics) can reveal at least part of its mystery.
Knowledge cannot be quantified and cannot be measured. The real goal of learning is not to agglomerate knowledge, but to keep fresh our capacity to learn new things, to receive new ideas. If we look at the example of great computer scientists, such as Dijkstra, Dahl, or Nygaard, we find exactly this attitude. 2
This is, of course, not unique to informatics, but is present here as it is elsewhere.
Readers may contact Böszörmenyi at http://www-itec.uni-klu.ac.at/∼laszlo/.
is a full professor and the head of the Department of Information Technology at the University Klagenfurt, Austria. His research interests focus on distributed multimedia systems, with special emphasis on adaptation and video delivery infrastructures. In 2003, he created a real and a virtual exhibition and published a book, People behind Informatics,
devoted to the memory of Edsger W. Dijkstra, Kristen Nygaard, and Ole-Johan Dahl ( http://cs-exhibitions.uni-klu.ac.at/). Böszörmenyi served several years as the deputy president of the Austrian Society for History of Computer Science.