Letter to CACM as an answer to Fred Brooks' "The Computer Scientist as a Toolsmith II" (CACM March 1995). Appeared in Communications of the ACM 38(6), June 1995, page 21.

Toolsmithism and Science: Recognize Yourself

I agree with most of what Brooks says. Most of Informatics (or Computer Science, if you want) is actually engineering, there is a relatively clear distinction between engineering and science, and Informatics has suffered because too often novel designs are considered contributions just because they are new. In particular, I much like the observation stated by Brooks that ``The scientist builds in order to study, the engineer studies in order to build'', that is, engineering is about producing useful artifacts and science is about producing knowlege, or better: understanding.

However, Brooks treats the discrimination between science and engineering as a dichotomy that applies to our discipline as a whole. This is not true. As his own brilliant formulation shows, it applies only to particular persons at a particular time. There has to be a science in Informatics to feed the engineers with basic knowledge. But today all too often workers in our field work like engineers but consider themselves scientists and then apply neither the quality criteria of engineering ("Is it really useful?") nor those of science ("Do we understand more?"). Why does this happen? Probably because our technology is so exciting and evolves so fast. I have lost who was the author, but somebody once wrote in CACM: "The dustclouds raised by a galloping technology are so thick that little visibility remains for the science to truly evolve."

So I would like to make the following point: It is paramount for fostering our field that everyone working in Informatics gets it clear for himself or herself, whether s/he is an engineer or a scientist, and then works accordingly. There is a science part of Informatics, but mix it up with the engineering part and you will not produce any unterstanding.

How can Informatics science work? For one part, there is the mathematical approach, theoretical Informatics, which is already well developed. What is lacking today is the empirical approach. We clearly need more experiments.
What Thomas Henry Huxley wrote, ``The great tragedy of science: the slaying of a beautiful theory by an ugly fact.'' just happens not often enough yet in Informatics. We need more experiments both in order to build such theories and in order to slay them.

Lutz Prechelt, University of Karlsruhe