Vol. 42 No. 2 1975 - page 241

JOSEPH WEIZENBAUM
241
them to anyone who will listen , though no one can understand . Indeed, while
in the grip of his compulsion , he can talk of nothing but his program . But the
only time he is , so to say , happy is when he is at the computer console . Then he
will not converse with anyone but the computer. We will soon see what they
converse about.
The compulsive programmer spends all the time he can working on one
of his big projects . 'Working" is not the word he uses, it is rather' 'hacking."
To hack is, according to the dictionary, "to cut irregularly, without skill or
definite purpose; to mangle by or as if by repeated strokes of a cutting instru–
ment." We have already said that the compulsive programmer, or hacker, as
he calls himself, is usually a superb technician.
It
seems, therefore, that he is
not' 'without skill ," as the definition would have it. But the definition fits in
a deeper sense than the sense that is related merely to technique ; the hacker
cannot set before himself a clearly defined goal together with a plan for
achieving it, for he has only technique , not knowledge. He has nothing he can
analyze or synthesize; in short , he has nothing to form theories about. His
skill is, therefore , aimless, even disembodied.
It
is simply not connected with
anything other than the instrument on which it may be exercised . His skill is
like that of a monastic copyist who, though illiterate , is a first-rate calligra–
pher. Thus his grandiose projects must necessarily have the quality of
illusions , indeed of illusions of grandeur. He will construct the one grand
system in which , soon , all other expertS will write their systems . (It has to be
said that not all hackers are pathologically compulsive programmers. Indeed,
were it not for the , in its own terms , often highly creative labor of people who
proudly claim the title "hacker ," few of today's sophisticated computer
time-sharing systems , computer language translators, computer graphics
systems , etc., would exist.)
Programming systems can , of course , be built without plan and in the
absence of any knowledge , let alone understanding , of the deep structural
issues involved , just as houses, cities , systems of dams , and national economic
policies can be so hacked together. As a system so constructed begins to get
large, however , it also becomes increasingly unstable . When one of its sub–
functions fails in an unanticipated way , it may be repaired so as to make the
manifest trouble disappear. But since there is no general theory of the whole
system , the system itself can be only a more or less chaotic aggregate of
subsystems whose influence on one another's behavior is discoverable only
piecemeal and by experiment . The hacker spends part of his time at the
console piling new subsystems into the structure he has already built-he calls
them " new features " -and the rest of his time in attempts to account for the
way in which substructures already in place misbehave. That is what he and
the computer converse about .
165...,231,232,233,234,235,236,237,238,239,240 242,243,244,245,246,247,248,249,250,251,...328
Powered by FlippingBook