Computing as Science and Practice

Tags:

And the good books keep on coming…

In the current issue of Science, I review Histories of Computing, a collection of the late Princeton historian Michael Mahoney’s essays on the history of software, edited by Tom Haigh for Harvard University Press.  Mahoney was one of the intellectual giants of the history of computing.  I studied with him in graduate school, and he was a friend and colleague for many years afterward.


Cybernetic Revolutionaries

Always on the lookout for good books dealing with the history of computing, I was pleased to see this week the announcement of Eden Medina’s new book, Cybernetic Revolutionaries: Technology and Politics in Allende’s Chile (MIT Press, 2011).  Not only does Eden happen to be a friend of mine, but her book is a welcome addition to the literature on the history of computing, which has generally been focused almost exclusively on the United States (with the occasional recognition of developments in Europe) and on technologies rather than users.  Medina’s “cybernetic revolutionaries” are a very different group from the “computer boys” that I focus on (although they share similar characteristics and agendas).  Medina’s subjects are the cyberneticians and government officials who imagined, in the context of Salvadore Allende’s socialist Chile, a far-seeing and -reaching computer system that would monitor and manage that nation’s entire economy.  Although the system, called Project Cybersyn, was never fully implemented, it represents in many ways the apotheosis of a particular vision of the electronic computer as the ultimate cybernetic system.

For those of you unfamiliar with the concept, cybernetics is possible the most important science that you have never heard of.   The word itself has larger disappeared from public discourse (at least in the United States) but its influence remains strong in a range of scientific disciplines from ecology to molecular biology to economics to psychology.

To give just a small sense of what Cybernetic Revolutionaries is trying to accomplish, take a look at a recent post on the MIT Press blog in which Medina draws a parallel between the socialist utopian vision of Project Cybersyn and the roughly contemporary television series Star Trek.  ”Like ‘Star Trek,’ Medina argues, “Project Cybersyn brought together technology and politics to advance a utopian vision of a just society.”  It is clear that, for many computer revolutionaries, “computerization” was not just a technological project, but also ideological. For many American corporations in the 1950s and 1960s, for example, computerization was about centralization.  In Allende’s Chile, the ideological dimensions of computerization appear to have been much more complex.  More recently, computerization is associated with democratization, or liberalization, or the perpetuation of free-market ideology.   The clear and close relationship between technology and ideology is only beginning to be explored by historians.


What makes software hard?

A couple of years ago I wrote an essay for the IEEE Annals of the History of Computing entitled “Software as History Embodied” in which I addressed the tongue-in-cheek question, first posed by the Princeton historian Michael Mahoney, of “what makes the history of software so hard?” Mahoney himself, of course, was playing on an even earlier question asked by numerous computer programmers, including the illustrious Donald Knuth. In my essay, I focused specifically on the challenges associated with software maintenance, a long-standing and perplexing problem within the software industry (one made all the more complicated by the fact that, in theory at least, software is a technology that should never be broken – at least in the tradition sense of wearing out or breaking down). My answer to Mahoney’s question was that the history of software was so hard because software itself was so complicated. Software systems are generally deeply embedded in a larger social, economic, and organizational context. Unlike hardware, which is almost by definition a tangible “thing” that can readily be isolated, identified, and evaluated, software is inextricably intertwined with the larger socio-technical system of computing that includes machines (computers and their associated peripherals), people (users, designers, and developers), and processes (the corporate payroll system, for example). Software, I argued, is not just an isolated artifact; software is “history, organization, and social relationships made tangible.”

In any case, I was tickled this past week to discover in my archives an early example of one of my “computer people” asking the question “what makes software so hard.” The article is from 1965, and was published in Datamation. The author is Frank L. Lambert, about who I know very little, other than that he was the head of the software group for the Air Force. What I like most about this piece is the way in which Lambert adopts a broad understanding of software. “Software … is the total set of programs” used to extend the capabilities of the computer, and the “totality of [the] system” included “men, equipment, and time.” Like so many of his contemporaries, Lambert saw software as a complex, heterogeneous system. “What made software so hard?,” Lamber asked rhetorically: “Everything.”


Are programmers paranoid?

The notion that computer programmer is not just an occupation but a personality type has a long history.  In 1968 the systems consultant Dick Brandon gave a talk at the ACM National Conference on the “Problem in Perspective” (the problem here being the problem of programming labor, one of the more significant “software crises” of the 1950s and 1960s) in which he described the “Programmer Pysche”:

Although computer programming has not been around long enough for biological inbreeding to be considered a problem, the personality traits of the average programmer almost universally reflect certain negative characteristics.
The average programmer is excessively independent — sometimes to the point of mild paranoia. He is often egocentric, slightly neurotic, and he borders upon a limited schizophrenia. The incidence of beards, sandals, and other symptoms of rugged individualism or nonconformity are notably greater among this demographic group. Stories about programmers and their attitudes and peculiarities are legion, and do not bear repeating here.1.

Although Brandon’s characterizations are at least somewhat tongue in cheek, they were close enough to the reality of common perception to prompt a follow-up study by Dr. Theodore Willoughby of Pennsylvania State University.   Willoughby concluded that programmers taken as a group were not, in fact, either paranoid, schizophrenic, or otherwise psychologically deviant.   Instead, he suggested that such characterizations were a reflection of the “generation gap” (or perhaps “professional identity gap”) between managers and programmers (or what I refer to in The Computer Boys as “organizational territory disputes”).  In any case, it is good to know that, statistically speaker, although your IT Guy might be odd, he is probably not paranoid…

  1.   Dick Brandon, “The Problem in Perspective”, Proceedings of the 1968 23rd ACM National Conference (1968)

RIP Daniel McCracken

The pioneering computer scientists Daniel McCracken passed away yesterday.  Among other things, McCracken wrote one of the first books on computer programming.  McCracken also wrote extensively on computer programming throughout the 1960s.  I know him best through his 1962 Datamation article on “The Software Turmoil,” which was one of the first articulations of the general sense of dissatisfaction with software development that would emerge in the late 1960s as the “Software Crisis.”1.

Throughout his career, McCracken argued that the solution to the burgeoning crisis on software development was in part the pursuit of professionalism within programming.   The following is from another 1961 essay on “The Human Side of Computing”:2.

 

The training of hordes of newcomers isn’t the whole story, of course.  There are problems in the professional development for those already in the field.  To take one instance, a lot of the present coders will have to become systems analysts in the next few years.  The problem is, how are they supposed to go about learning the new skills required?[p.9]

 

The difficulty seems to be that systems work is not so much a body of factual knowledge, as an approach to problem solving – and no one knows how to teach the problem solving approach.  All that we seem to be able to do it let the coder work with an experienced systems man, and hope that some of the skills get transferred by osmosis.[p.9-10]

 

This observer would like to suggest that the attainment of truly professional status for computer people as computer people is only partly a matter of demonstrating mastery of subject matter.  It is also a matter of demonstrating a sense of responsibility and thereby gaining a certain dignity and stature in the public eye.

 

The historian of computing Arthur Norberg interviewed McCracken for an oral history for the ACM History Committee.

  1.   Daniel McCracken, “The Software Turmoil: Nine Predictions for ’62″, Datamation 8:1 (1962)
  2.   Daniel McCracken, “The Human Side of Computing”, Datamation 7:1 (1961)

Programmer aptitude?


The 1960s were characterized by a perpetual “crisis” in the supply of computer programmers.  The computer industry was expanding rapidly; the significance of software was becoming ever more apparent; and good programmers were hard to find. The central assumption  at the time was that programming ability was an innate rather than a learned ability, something to be identified rather than instilled. Good programming was believed to be dependent on uniquely qualified individuals, and that what defined these uniquely individuals was some indescribable, impalpable quality — a “twinkle in the eye,” an “indefinable enthusiasm,” or what one interviewer described as “the programming bug that meant … we’re going to take a chance on him despite his background.”

In order to identify the members of the special breed of people who might make for a good programmer, many firms turned to aptitude testing.  Many of these tests emphasized logical or mathematical puzzles: “Creativity is a major attribute of technically oriented people,” suggested one advocated of such testing. “Look for those who like intellectual challenge rather than interpersonal relations or managerial decision-making. Look for the chess player, the solver of mathematical puzzles.”

The most popular of these aptitude tests was the IBM Programmer Aptitude Test (PAT).  By 1962 an estimated eighty percent of all businesses used some form of aptitude test when hiring programmers, and half of these used the IBM PAT.

Although the use of such tests was popular (see Chapter 3, Chess-players, Music-lovers, and Mathematicians), the were also widely criticized.  The focus on mathematical trivia, logic puzzles, and word games, for example, did not allow for any more nuanced or meaningful or context-specific problem solving. By the late 1960s, the widespread use of such tests had become something of a joke, as this Datamation editorial cartoon illustrates.

 

So why did these puzzle tests continue to be used (including to this day)?  In part, despite their flaws, they were the best (only?) tool available for processing large pools of programmer candidates.  In the absence of some shared understanding of what made a good programmer good, they were at least some quantifiable measure of … something.


The Computer Girls?

Tags:

In a recent talk that I gave at Stanford University, I discussed the changing role of women in the computing industry.   The focus of the talk was a 1968 article in Cosmopolitan Magazine called “The Computer Girls”.  An unusual source for a historian of computing, but one of my favorite and most useful.   My particular favorite: a quote from the celebrated computer pioneer Admiral Grace Hopper comparing computer programming to following a recipe: “You have to plan ahead and schedule everything so it’s ready when you need it. Programming requires patience and the ability to handle detail. Women are ‘naturals’ at computer programming.”

 


Recent Reviews

This past month has witnessed a flood of reviews for The Computer Boys:

From the IEEE Annals of the History of Computing:

“It is to the author’s credit that he has crafted an account that is at once engaging to professional historians of computing and accessible to a wider audience. By liberally injecting colorful anecdotes and pithy quotes into a highly polished analytical narrative, Ensmenger has written one of those rare books that is both scholarly and a pleasure to read.”

From Enterprise and Society:

“one of the most complete histories of computing ever produced and is highly admirable for its attention to detail…”

 

From the Chartered Institute for IT in the UK:

“I have enjoyed reading this book so much that I could simply republish it ‘verbatim’ as my review – so that you can appreciate every single droplet. It is quite simply a ‘must read’ for any programming type and especially so for those of us who entered the industry from the university or polytechnic milk round of the seventies and beyond. All is revealed!”


Help Wanted!

One of the most significant developments in the computer industry during the 1960s was the perceived shortage of skilled “computer people”:

In 1945 there were no computer programmers, professional or otherwise; by 1967 industry observers were warning that although there were at least a hundred thousand programmers working in the United States, there was an immediate need for at least fifty thousand more. “Competition for programmers,” declared a contemporary article in Fortune magazine, “has driven salaries up so fast that programming has become probably the country’s highest paid technological occupation . . . Even so, some companies can’t find experienced programmers at any price.”1.

The image is from an article in Popular Science from two years earlier. The programmer personnel crisis is the first of the many “software crises” that were proclaimed over the next several decades. The first published use of the phrase “software crisis” appears in a 1966 Business Week article on the “shortage of programmers.”2

  1.   Gene Bylinsky, “Help Wanted: 50,000 Programmers,” Fortune 75, no. 3 (1967): 445–556.
  2. “Software Gap: A Growing Crisis for Computers,” Business Week, November 5, 1966, 127.

Review: CHOICE

From the review:

Those interested in computer history will enjoy it; those hiring or managing programmers need to read it.

I had always hoped that, despite the constraints of the academic monograph, that The Computer Boys would be useful and interesting to working programmers.  Glad to see that at least one reviewer agrees!