‘ iw vaie 4 ‘ Y iar a
vw a DROGRAYING As AN NDNDUAL ACINTY
[OCR from image-only PDF page; verify layout and illustrations in the PDF.]
I have in mind the only liberty worthy of that name, liberty consisting in the full development of all the material, intellectual, and moral powers latent in every man; a liberty which does not recognize any other restrictions but those which are traced by the laws of our own nature, which, properly speaking, is tantamount to saying that there is no restriction at all.. Mikhail Bakunin* t the beginning of this book,‘we set out to account for some programmers. We have seen that much of that variance can be accounted for by social factors-much more than we might have believed from casual considerations. But, no matter how much variance is attributable to social factors, there will always remain a residue. No matter how similar the structure of two programming groups might be, they will produce different finished products. In this section, we shall try to account for some of those differences by examining factors centering in and around the individual. *Reprinted with the permission of Macmillan Company. From The Political Philosophy ot Bakunin, by M. A. Bakunin. Copyright 1953, 1964 by the Free Press. 119
120 Programming as an Individual Activity How shall we proceed? Although little psychological research has been done directly on programmers doing programming, we could imagine that a psychological study had been done and think about how we would analyze it to account for differences in performance by different subjects. The first thing an experimental psychologist would ask is “Did all sub- jects do the same task?” Even in a carefully controlled experiment, there are many differences that might creep into what the subjects were doing, or thought they were doing. Moreover, if we want to compare two different experiments, we are obliged to look first for any difference in task before we can draw meaningful conclusions. Certainly in programming, where every task is different from every other in a multitude of ways, our first invéstigations would have to be into task differences. The next thing a psychologist would consider would depend on the object of his experiment. If he were trying to measure individual differ- ences, he would concentrate on keeping all aspects of the environment as constant as possible so that they could be excluded from considera- tion. He would not, for example, give a test to some subjects in an air- conditioned room and others in a room that was overheated, for the room temperature could easily be a more dominant influence on performance than the individual differences he was trying to measure. But if the psychologist were trying to measure the effect of temperature on performance, he would make exactly this kind of variation. Instead of holding the environmental variables constant, he would try to hold in- dividual differences down to a minimum. To do this, he might try giving the same test many times to the same individuals—although he would then have to contend with learning effects, something we, too, must consider. In any case, we are interested in both the effects of environment and the differences among individuals, so the order in which we consider them is not really important—as long as we give both their due. In the following chapters, we have broken down the factors which, in sum, constitute what psychologists call “individual variations.’’ That is, if two people are given the identical task to perform in the identical en- vironment (which is, we all realize, an impossibility; yet it is a necessary conceptual fiction), the differences in the way they behave can be attrib- uted to one or more of these factors. The individual variations that inter- est us may be further subdivided into the general categories of ‘‘person- ality,” “intelligence,” and “training” or “experience.”
Silver Anniversary Notes -xX i Comments on Part 3: Programming as an Individual Activity For me, the concepts in this part of the original book held the most hope—so perhaps it was inevitable that it delivered the most disappointment. My goal was to stimulate the study of how programmers do their work, and that’s not what I’m disappointed about. No, the past twenty-five years have seen a proliferation of interesting experiments, such as those conducted in Ben Shneiderman’s labora- tory at the University of Maryland. My problem, like so many projects’ problems, arose from starting with the wrong goal. My goal wasn’t really to stimulate a lot of experiments, but to stimu- late the understanding that would lead to better results at the individual program- mer’s level. For the most part, that simply hasn’t happened. A quarter-century later, individual programmers aren’t any more adept than were their predeces- sors. They are not better suited to programming by personality, nor more intelli- gent, nor better motivated, nor better trained, nor more experienced. They are, however, far more productive. Of course, | may just be an old geezer with a distorted view of how clever we were when we were young geezers. However, | don’t think so (of course!) for two reasons. First, we weren't smarter than the present-day programmers. | work with programmers almost every day, and they seem to be pretty much like | was when | was young—very smart and highly motivated. At times, they seem awfully, awfully clever; at other times, incredibly dense. Ah, yes, | was exactly the same, twenty-five years ago.
Silver Anniversary Notes Second, | do think | can account for the differences in productivity in other ways—better tools, better teamwork, better management, and better under- standing of what tasks programmers are trying to accomplish.
Powered by TurnKey Linux.