Computers in Context Kap 1
Computers in Context Kap 1
Chapter 1 Computers
____________________
Using Computers
The Mechanistic Heritage
Representation and Formalization
Rules and Rationality
Computers and Bureaucracies
Coping with Change
___________________
Listen to Howard Aiken physicist at Harvard and designer of some of the very
first computers, speaking in 1956: “…if it should ever turn out that the basic
logics of a machine designed for the numerical solution of differential equations
coincide with the logics of a machine intended to make bills for a department
store, I would regard this as the most amazing coincidence that I have ever en-
countered.”
Aiken was terribly mistaken, but certainly not for lack of computer technology
expertise. Compare his prediction to that of John McCarthy, mathematician and
inventor of Lisp, writing in that same year 1956 to the Rockefeller Foundation,
asking for money to finance the first Artificial Intelligence conference at
Dartmouth College: “The study is to proceed on the basis of the conjecture that
every aspect of learning or any other feature of intelligence can in principle be so
precisely described that a machine can be made to simulate it.”
Aiken was very much influenced by the usage that had motivated him, and
others, when constructing the first computing machines. McCarthy based his
view of what computers could do on an understanding of the principles of a
general computing machine, rather than on the actual capacity and use of the
machines of his time. Together they cover the field, if we are looking for answers
to what computers can do.
Using Computers
2
Think of the first time you suc-ceeded in making a computer do what you
intended it to do. Think of the feeling it gave you of being in control of a powerful
machine. Before getting too excited, don’t forget the times you had to struggle to
make the computer do what you wanted. You could not get the right result, or,
worse, there was no reaction at all. Remember the direct way in which mistakes
or incon-sistencies in your first programs were revealed and the difficulties you
sometimes had when you were trying to correct the programs. You knew that
something was wrong, but you had no idea what it was.
Computers are fascinating be-cause they are fast, powerful and extremely
versatile machines, and because they are programmable. They will obey your
most whimsical command, provided they can interpret it. It is really magic: they
do exactly what you tell them to do. But of course you have to think and express
yourself clearly, you have to be careful with your words.
We can use computers to play with texts and immediately see the conse-quences.
It is easy to reuse text and to experiment with different formulations and the
sequence in which we present our argument. There is no guarantee, of course,
that texts produced on computers are better in quality, clearer and richer. But
computers are extremely effective tools for producing, modifying and combining
texts, and it is fascinating to play and experiment, trying to be convincing, clear
or even poetic.
We also use computers to explore the world without having to suffer the real
world consequences. Kids fight monsters without ever getting hurt. Pilots are
trained in flight simu-lators without severe risks and for less money.
Investments are evaluated without running the risk of losing fortunes. And
bridges and highways are designed and tested without suffering collapses or
traffic jams.
All these questions concern quality. People are concerned with the quality of
work as computers replace old work habits and introduce new ones. We have to
worry about the quality of data and information when computers are used, as
they so often are, to provide decision support. As citizens we should be concerned
with the quality of life in a society pervaded by information technology. And as
systems developers we are concerned about the quality of a particular computer
system in relation to the wants and needs of the customer or user.
When, in this book, we discuss the development and use of computer systems, we
have all these aspects of quality, and more, in mind. In fact, our philosophy is
that the development of computer systems is a constant struggle with quality.
This struggle with quality constitutes the fundamental challenge and fascination
of being a systems developer. Before expanding further on this theme, we must,
however, go deeper into the very idea of computing.
Electronic computers have been around since World War II. Before then,
computers were people working in big insurance companies or ballistic research
laboratories performing long and tedious calcula-tions. These human computers
used desk calculators to perform simple subtasks of addition and multiplication,
combining these subtasks into the computation of more complex functions.
During the war, new artillery weapons were developed at such a pace that the
human computers were falling far behind in computing the necessary firing
tables. As a result, the American government was interested in supporting
attempts to construct “an automatic calculator.” Early such machines, like
Aiken’s Mark 1, used electromagnetic relay technology. The decisive step to a
full-blown computing machine was taken when the machines were made
electronic with possibilities to store programs in their memories. The electronic
representation of data made it possible to change the contents of registers much
faster than in the mechanical machines. The idea of looking at computational
procedures as data, of storing programs in memory, made it possible and easy to
change the function to be computed.
4
The electronic computers were built to replace the human computers. They were
designed as technical devices to be fed with numbers and computational
procedures. They could compute according to prescribed procedures and deliver
the computed results as output.
Classical computer science has linked human computing and machine computing
in the so-called Church-Turing thesis: everything that a hu-man being can
compute can be computed by a machine. According to this thesis, our intuitive
under-standing of computation refers to the set of computations that can be
formally prescribed. Closely related to this idea is the concept of an algorithm.
The algorithm, with its strict definition, is a bridge between our intuitive notion
of (human) computation and the idea of a computing machine. Any algorithm
can be implemented on a machine so if human computation is algorithmic, then
the Church-Turing thesis is true. But notice that this thesis cannot be
mathematically proved, since it relies on an intuition about what it is for a
human being to compute.
But something is obviously wrong here. Thinking is the essence of being human,
according to Descartes, the human mind is a thinking thing, a res cogitans. But
the computers we see around us are anything but human. They don’t reason,
argue, plan, fantasize, imagine, memorize, hope, or foresee? They compute but
they don’t think. Does this mean that Descartes was wrong? And not only
Descartes, but our whole modern conception of thinking underly-ing the
construction of the computer and the development of computer science? Some
would say yes, there is something wrong here. Others would argue that it is only
5
If your answer is “no, a machine can never be made to think,” then you are
probably more of a Romantic, more attuned to the Romantic world view of the
early 19th cen-tury. This is a very different conception of the world based on
ideas about interpretation, uniqueness, chaos and change. In the next chapter
we shall discuss this Romantic alternative.
We shall begin, in this chapter, by taking a more careful look at our Mechanistic
heritage. This heritage exerts a powerful influence on all of us, whether we
believe in the project of turning computers into thinking machines or not.
But before we do that, let us just say a few words about world views. We don’t
often find reason to think deeply about how we view the world, and we seldom
have to formulate or pledge allegiance to a coherent world view. Our world views
tend to consist of more or less loosely related, sometimes conflicting elements,
some explicit and some tacit, gathered from very different sources.
Most of us have world views that combine both Mechanistic and Romantic ideas,
even if we would not normally identify them by these terms. Just in order to be
interested in computers, you have to be Mechanistically oriented. And in order to
be the kind of person who would read a book like this, you probably have to be
touched by Romantic ideas.
To come to grips with their changing world, the modern Europeans developed
natural science. The new physics taught that our naive perception of the world is
loaded with errors, that the world is not what it seems to be. The sun seems to be
moving across the sky, but isn’t. Objects seem to be colored, but aren’t. With the
recognition of systematic perceptual errors, the world and our representation of
it become clearly distinguished. Our perception of the world does not coincide
with the world itself. The world itself is out there, our experience of it is in here,
in the mind.
This dualism of external world and inner life that we now take for granted is
really a modern, recent idea. The explicit distinction, between the world and our
representations of it, was a necessary condition for the project of modern science:
to replace our naive perceptions with true, scientifically based representations of
reality.
No one did more than Descartes to promote the idea of knowledge as the
representation in the mind of a world out there. The mind is a mirror of the
world, Descartes could say in a time when glass-making had advanced enough to
make mirrors high fashion. But an imperfect, cloudy mirror distorts its object,
and our minds are not to be trusted, so we have to make sure that our ideas are
clear and exact before we depend on them to give us an accurate picture of the
world.
Unclear ideas confuse us about the world and get confused with one another.
Images, the pictures of the world we see in our mind, contain an abundance of
material—subjective properties like color, taste, and smell—that is not to be
found in the world. The Mechanistic world view challenges us to strip our ideas
of such subjective material in order to make them true to the world. Like Galileo
(1564-1642) before him, Descartes came to argue that we have to use
mathematics as a means of representa-tion in order to map the world in a clear
and exact way. The world is like an open book for us to read, and it is written in
the language of mathematics.
Galileo worked with geometry, using lines, triangles and squares to represent
properties like velocity and acceleration. Transforming geometry into algebra in
7
his analytic geometry, Descartes could do mechanics with numbers and alge-
braic functions and argue that algebra provides us with the exact symbols we
need to represent the world truthfully.
By introducing explicit rules for how to express ourselves, we can develop more
exact representations and avoid misunderstanding. The computer, as we have
come to know it, is based on the application of explicit rules and the idea of for
representation.
The Mechanistic ideas of representation and formalization are at the very heart
of computing. Data are representations of facts, and the computer is a technology
for storing and manipulating data. Without the idea of representation we would
have no computers. Without computers we would not have the same potential for
automatically manipulating our representations of the world.
The modern world view is a rational view of the world. Rational think-ing is the
conscious, competent administration of ideas, aided by a method. To rationalize
is to set on rules, to develop methods, write up pro-grams. To be really rational
you need not only follow rules, you have to know and be able to state and defend
the rules you are following in your thinking. Before you undertake an action, you
formulate the rules; before you develop a system, you formulate your method.
The real work lies in choosing, formulating and motivating the rules, the
method. The rest is routine. A machine can do it.
Modern science with its method is only one example of a social institution
rationalized by explicit rules. Descartes’ scientific method—his “rules for the
direction of the mind”—has its coun-terpart in the explicit and unequivocal rules
controlling a bureau-cracy, in the written instruction manual for op-erating and
repairing a modern machine, in the explicitly formulated consti-tution of a
modern democratic society, in the official curricu-lum for a modern educational
institution, and so on.
For the Mechanists it is the business of science to map the world, to give a
systematic, preferably axiomatized, definite, and true account of the world. This
is possible because the world it-self is an ordered, fundamentally unchanging
system.
Newton’s mechanics, with its three basic laws, is the outstanding example of an
ordered system. Leibniz gave us a particularly powerful conception of the world
as such a system, a world that is deterministic and governed by two fundamental
principles: the principle of sufficient reason and the principle of pre-established
harmony. Nothing can exist without a reason, and everything that is has to be in
harmony with everything else that is.
The 17th century intellectuals were fascinated by machines, and this interest
influenced their image of the world. Descartes and Leibniz both played with
machines as toys and as powerful ideas. They saw not only the world as a
machine, but also the body (Descartes) and society (Leibniz). They laid the
9
When you see something as a machine, be it the world, the body or society, you
want to take it apart and make explicit the rules governing its behavior. When
you know the rules, or perhaps better the laws, governing the functioning of a
machine, then you can control it. When you realize that the heart is a pump you
know how to deal with it. A society governed by rules can be controlled by those
formulating the rules. To follow rules in your thinking is to control your
thinking.
But the real challenge in computing lies in exploring and applying the
Mechanistic world view, while at the same time understanding and appreciat-ing
the limits of its application. When we try to control the world with computer
programs or methods for systems development, we should not forget that the
Mechanistic world view is based on the assumption that the world we are trying
to understand and control is itself an ordered, fundamentally unchanging
system.
The Mechanistic world view has influenced organizations and society long before
the invention of the electronic computer, and we can learn a lot about computers
and formalization by looking more generally at the ways we organize human
activities.
But a good design document, dividing the labor well, does not automatically lead
to a satisfactory system. During implementation, we must evaluate and test the
indi-vidual modules, and, even more cru-cial, perform integration tests and
evaluate the operation of the total system. In addition to design documents
defining the division of labor, we need other techniques to support the
coordination of individual tasks to accomplish a satisfactory result as a whole.
The role of the foreman is to make de-tailed plans expressing what each
individual worker has to do and how the machines on the shop floor should be
utilized. The foreman communicates these plans to the workers, and they report
back to him when jobs are finished or breakdowns occur. He makes decisions on
how to handle delays and break-downs, compiles reports to the production
planner, and receives overall plans for the production in his department.
The computer is used to communicate, process and store the information needed
to manage and coordi-nate the activities on the shop floor into one integrated
effort. Workers, foremen and production planners use the computer to generate,
receive and process information. The assumption is that the information
provided by the computer system represents the actual state of production and
commitments. The computer is used in ac-cordance with the Mechanistic view of
the world to support rational decision making in optimizing management of
resources.
The foreman is not primarily a decision maker. He has to listen, negotiate, and
manipulate to manage resources in a satisfactory way. As in the bureaucratic
case, the computer based production control system is used to communicate,
process and store information. But to be effective, the com-puter system should
also support the actors in negotiating and administrating commitments, in
addition to traditional production planning.
But before the picture we have painted of organic forms of thinking and
organizing becomes too glowing, we had better stop and consider its weaknesses.
And then it is clear, of course, that with an organic approach we do not utilize
the fundamental strength of the computer: its ability to process formalized
information. With the use of a computer we do not have to write each letter from
scratch. We can use a standardized format, and let the computer aid us in
comparing, categorizing, and evalu-ating messages. Often it is conve-nient to
have some kind of standardized format, or even standardized ways of providing
the information by enumerating in advance the possible choices as in a
traditional questionnaire.
There are both practical and economic reasons for formalizing information when
using computers. In general, we know that the more stable and repetitive our
work, the more we tend to apply bureaucratic approaches. Not only because we
are told to do so, but because we find it effective and helpful.
In the way exemplified here, we can go back and forth between the way we think
of computers and the way we think about social organizations, in the process
learning more about both. Mechanistic ideals and the formalization imperative
continue to have a strong influence on both computers and organizations.
Modular thinking and hierarchical structures have dominated our conception of
computer systems. To deal with the complexity of these systems we have
struggled to separate concerns as we divide labor in the classical bureaucracy.
We have also tried to economize with exchange of information by relying on
hierarchical structures thereby minimizing the number of active information
channels between modules. We have been very successful in turning the
computer into a perfect bureaucrat, computer systems into well ordered
bureaucracies.
But as a consequence of this, the technology is not particularly well suited to the
use in more organic forms of organizations. And its bureaucratic nature has been
a restraint on our imagination in finding new use for the technology. For a long
time its use was mainly restricted to the bureaucratic functions of organizations
and it acted as a support for the bureaucratic nature of those organizations. But
that is changing now as our interest in organic forms of organization has grown
enough to make us begin to rethink the very nature of computer technology.
15
The computer artifact has long since out-grown the image of the human
computer. As its use has diversified our understanding of it has diversified as
well. If we work with electronic mail systems we naturally focus on those
qualities of computers that make us think of them as media. If we work with sta-
tistical program packages we will attend to other qualities and see the artifact as
a computing machine. Understanding and evaluating a text processing system it
is best to treat the system as a tool for producing texts. But in many cases
several competing perspectives are equally relevant in understanding and
designing computer systems. If all you have is a hammer, the world tends to look
like a nail. It isn’t.