Eugene, DDJ's associate technical editor, can be contacted at eekim@ddj.com.
In 1936, Howard Aiken, a Harvard graduate student searching for ways to solve nonlinear differential equations, proposed that the physics department build a large-scale digital calculator. As word spread about Aiken's proposal, a technician asked Aiken why he wanted to build such a machine when the university already had one.
The technician then showed Aiken a piece of Charles Babbage's Difference Engine, built almost a century earlier and donated to the school by Babbage's son. Intrigued, Aiken, who would later build the Mark I (the first electromechanical, digital computer), began reading Babbage's work, and is said to have later "felt that Babbage was addressing him personally from the past."
History not only provides us with interesting stories, but also a context for understanding our own work. Learning of the past often enlightens (and sometimes surprises) us, as it did Aiken. The computer's recent flurry of anniversaries -- from ENIAC's 50th birthday to the microprocessor's 25th -- makes the present an appropriate time to look back at the history of the computer.
In Computer: A History of the Information Machine, Martin Campbell-Kelly and William Aspray, both notable computer historians, define computers as "information machines." Using this definition as a launching pad, the authors attempt to provide a comprehensive history of computers from Babbage to the present.
Defining a computer as an information machine has some interesting consequences. Campbell-Kelly and Aspray avoid the typical discussion of early calculators from the likes of Pascal, Leibniz, and the ancient Chinese, instead delving into early methodologies of information processing.
After briefly introducing Babbage and his Difference Engine, the authors describe the Banker's Clearing House in London. Checks had become popular in the late 18th century, and as usage rapidly rose, banks needed an effective way to exchange checks for cash from other banks.
The solution was for representatives from the various banks to meet periodically at a central location, exchange checks, tally the amounts owed, and distribute the cash appropriately. In 1839, this seemingly mundane solution accounted for £954 million of checks cleared, equivalent to $250 billion in today's money.
The Banker's Clearing House delighted Babbage, and demonstrated a methodology that was vital for large-scale computation to be possible even before computers existed. The authors provide several similar examples, and point out that many of the earliest computer companies, not surprisingly, had their roots in information processing rather than raw number crunching.
This focus on the information and computing before computers permeates Computer: A History of the Information Machine and provides an original perspective on the history of computers. There are books that document topics such as Babbage and ENIAC better than Campbell-Kelly and Aspray. However, the approach the authors take lets them examine less obvious -- yet extremely interesting -- events.
The most fascinating chapter describes the evolution of real-time computing. These days, we take high-powered personal computers with multitasking operating systems for granted. However, as the authors are quick to point out, the transition from faster computation and information processing to real-time computing was not an obvious one.
The need for real-time computing arose not from corporations but from the defense industry. Frightened by the prospect of nuclear annihilation in the midst of the Cold War, the U.S. military decided it needed an advanced defense system that could track data about incoming aircraft, weather, and the like in real time, from thousands of radar installations and military bases.
The ensuing development, dubbed "Project SAGE," spawned a new direction for computers and indirectly led to several advancements, including core memory, which replaced slow, electrostatic tube memories.
Perhaps one of the most overlooked innovations resulting from real-time computing is the Universal Product Code (UPC). Supermarkets in the early 1970s saw checkout lines growing and productivity stagnating. These stores needed a system that would keep accurate product inventory and pricing records and that would speed up the checkout lines. The main difficulty wasn't designing such a system, but implementing it, which required widespread collaboration and cooperation among both stores and producers.
Inventing the UPC and persuading people to adopt it as a universal standard was a feat of enormous scope. The problem itself is reminiscent of many of the standardization issues we face today, and the authors manage to give the UPC success story its proper due.
While Campbell-Kelly and Aspray's emphasis on information is the source of many interesting stories, their primary purpose is to provide a comprehensive history of the computer itself. While their goal is admirable, the book suffers from problems expected of any book of such broad scope.
The first difficulty the authors face is determining what to leave out. Fortunately, they manage to weave several seemingly disjunct events into a fairly lucid and comprehensive story, discussing what many would agree are landmark events in the history of computers while introducing several more offbeat but no less interesting events.
The most glaring omission was the lack of discussion of Alan Turing's contributions. Turing, sometimes referred to as the "father of computer science," was also an important contributor to England's codebreaking efforts during World War II and to EDSAC, one of the earliest digital computers. Campbell-Kelly and Aspray devote exactly one paragraph to Turing, an unfortunate decision considering Turing's theoretical and visionary contributions.
Additionally, because the authors cannot discuss any one topic in great depth, they sometimes make questionable statements of fact and analysis. For example, they claim that Ada Lovelace's contributions to computer science are "greatly exaggerated." It is hard for the amateur historian to accept or reject such a claim without some sort of justification. The authors provide neither evidence for their claim, nor a reference to such evidence.
Many of these significant omissions or dubious statements seem to be in their section on personal computers. The authors seem aware of these shortcomings, as they note, "No serious historian has yet written a full account of the personal computer, mainly because historians generally avoid writing about recent events on which they lack a proper perspective." In a chapter note, the authors say, "The best account of the early development of the personal computer is Paul Freiberger and Michael Swaine's Fire in the Valley."
Computer's weakness is indeed Fire in the Valley's strength. Freiberger and Swaine provide a nearly first-person account of the genesis of the personal computer, relying on hundreds of hours of interviews. Published in 1984 (and currently out of print), Freiberger and Swaine's book remains the best account of the personal-computer revolution.
Early in Fire in the Valley, the authors establish what becomes a common refrain -- the mainframe and minicomputer companies did not spark the personal-computer revolution, nor in fact, could they have:
Had the personal computer revolution waited for the mainframe computer and minicomputer companies to act, it might still lie in the future. But there were those who would not just wait patiently for it to happen, those whose impatience led them to take their own steps toward creating the revolution. Some of these revolutionaries were very young.
The problem, so the authors claim, was not that the large and powerful mainframe and minicomputer companies did not have the technical know-how or the market influence. The problem was cultural.
Freiberger and Swaine go on to provide a gripping narrative of the hobbyists' desire to have computers of their own with which to play. Sick of their dependence on large corporations to spend even limited time with these fascinating machines, these hobbyists, greatly influenced by the hippie movement of the late '60s and early '70s, took matters into their own hands.
What no one realized was the extent of this yearning, which Freiberger and Swaine liken to tinder ready to be lit. Ed Roberts, whose garage-based company, MITS, created the Altair, worried that there was no market for personal computers. Less than a month after an article about the Altair appeared in Popular Electronics (shortly after the Altair's release), MITS went from $400,000 in the red to $250,000 in the black.
Not only did an enormous market exist, people were willing to buy, sight unseen, machines that weren't guaranteed to work. The early Altair had 256 bytes of memory and no software, monitor, or keyboard. What it did have was an open bus (the first of its kind on personal computers) and a number of enthusiastic and creative users willingly tinkering with the computer and sharing the information with others.
This spirit of openness and cooperation was the wind that fanned the flames. The bus gave engineers an architecture for extending the Altair and other personal computers, and (to Roberts' dismay) spawned its own industry of computer add-ons. Indeed, the free flow of information created both the market itself and the market's biggest problem -- piracy.
Freiberger and Swaine's focus on the hobbyist culture allows them to describe significant but underappreciated participants in this revolution: computer clubs, conferences, and publications. The Homebrew Computer Club, the West Coast Computer Faire, and of course, Dr. Dobb's Journal, all enabled the open flow of information among computer pioneers. The authors' strategy of describing the recollections of those involved with these early organizations is especially appropriate for these stories.
Fire in the Valley is vastly different from Computer: A History of the Information Machine in both style and intent. However, both books have one thing in common -- skimpy final chapters. Fire in the Valley ends with short accounts of IBM's entry into the personal-computer market and Apple's Macintosh. The advent of the IBM PC is vital to Freiberger and Swaine's book, as it describes elements of how the industry giant succeeded where others like it failed. The two describe IBM's story in enough detail to make a fitting conclusion to their book, but the lack of detail in comparison to previous chapters is apparent. (This may change in the near future, as the authors are currently working on an updated edition.)
The fact that the final chapters of both books are less substantial than their previous chapters raises some interesting questions about the study of history. One possible explanation is that, from a historian's perspective, the more current the information, the less accessible it is. This seems paradoxical at first. The youth of the computer industry gives historians a unique opportunity to talk to those directly involved with the shaping of the field, essentially a wealth of primary sources.
However, historians can't just recount everyone's story verbatim. They must assess first-person statements, cross-reference them with documented sources, and ultimately, choose what and what not to mention. As Campbell-Kelly and Aspray note, their chapters on the personal computer and Internet suffer from a lack of historical context. Those events are simply too current to allow the authors to describe their impact adequately. Context is what allows both sets of authors to emphasize certain notions, such as the dichotomy between corporate and personal computing, and to describe and analyze the relevant events accordingly.
The importance of history aside, both sets of authors do more than simply retell facts. They tell fascinating stories about our industry, and for that alone, both books are well worth reading.
Computer: A History of the Information Machine
Martin Campbell-Kelly and William Aspray
Basic Books, 1996
336 pp., $28.00
ISBN 0-465-02989-2
Fire in the Valley
Paul Freiberger and Michael Swaine
Osborne/McGraw-Hill, 1984
288 pp. (out of print)
ISBN 0-88134-121-5