Code Nation. Michael J. Halvorson
as well as IBM’s newest operating systems and programming tools. Although Mitchell possessed formidable engineering skills, her Primer was designed for non-programmers who were preparing to take their first steps with a new language. In reality, readers did need some knowledge of college algebra, trigonometry, and matrix operations to make much use of this book. But no specific computer knowledge was required, and Mitchell assumed that programming would be an entirely new concept. In 1957, most of IBM’s FORTRAN users were scientists who were well-trained in engineering but knew little about computers. Formula translation (FORTRAN)
Figure 3.7Programmer’s Primer for FORTRAN: Automatic Coding System for the IBM 704 (1957). Grace E. Mitchell was the uncredited author of this early “how to” programming tutorial from IBM. (Courtesy of the Computer History Museum)
Mitchell’s primer offered a concise analysis of FORTRAN’s core features, including some of the complexities only hinted at in the original Reference Manual. (See Figure 3.8.) For example, Mitchell included a lengthy section on working with two- and three-dimensional arrays in FORTRAN I. The tutorial explored how to declare arrays, assign initial values, and step through arrays using DO loops and other control structures.Arrays25 Mitchell also included practical information about debugging unruly programs, a topic that was largely neglected in the Reference.
Figure 3.8Excerpt from Mitchell’s Programmer’s Primer (1957, page 44), showing how to write a FORTRAN program that computes matrix multiplication. The FORTRAN code was displayed on a standard coding sheet, making it easier to identify the columns, statement numbers, and language elements needed. (Courtesy of the Computer History Museum)
3.5Daniel McCracken’s primersDaniel McCracken’s Primers
Daniel D. McCracken (1930–2011) also established his reputation as a programming author, publishing some of the first general textbooks about software development in the U.S. (See Figure McCracken, Daniel3.9.) McCracken wrote his first computer book at the age of 24 while working for General Electric, a 256-page text entitled Digital Computer Programming that appeared during the fall of 1957.26 This title was published by John Wiley & Sons, one of the first computer book publishers. Wiley went on to develop an international reputation for reliable computing titles in several categories. The influential acquisitions editor at Wiley who worked with McCracken was Walker Stone, a determined technologist who had taken a few programming courses in the 1950s and quickly recognized the computer’s importance and value.Daniel McCracken’s primers27 Stone oversaw technical publishing at Wiley for several years, establishing the Information Science Series and other well-regarded imprints.
Figure 3.9Former ACM President and computer book author Daniel D. McCracken. (Image courtesy of the Charles Babbage Institute, University of Minnesota Libraries)
Looking back at his career, McCracken said that he wrote the Wiley book in 1957 because there was no textbook available for programmers, and he wanted to write one that described the features of a “hypothetical machine,” which he conceived of as a cross between an IBM 704 and an IBM 650.Hypothetical machine28 Using this platform, McCracken introduced students to basic programming concepts like looping, branching, input, output, and floating-point arithmetic. The textbook had a relatively limited appeal because of its narrow audience (at the time, his book competed with the second Daniel McCracken’s primersedition of Maurice Wilke’s book on EDSAC programming), but McCracken’s text did find its way into some of the earliest programming courses in America. For example, Jean Sammet is reported to have used McCracken’s book at Adelphi College on Long Island soon after its release.Sammet, Jean29
McCracken went on to publish A Guide to FORTRAN ProgrammingFormula translation (FORTRAN) with Wiley in 1961, a textbook that eventually sold 300,000 copies. This title has been described as the first-bestselling book for programmers in the U.S., an achievement related to McCracken’s acumen as a writer, Wiley’s skillful marketing, and the emergence of FORTRAN as the standard high-level language. McCracken described the magical combination several years later: “Walker Stone saw it, convinced management, and I just turned all possible effort to getting a FORTRAN book out fast before anybody else got the idea. I wrote that book in under six months.”30
McCracken’s FORTRAN tutorial came in at just 88 pages, and it was published in a flexible workbook format (8.5” × 11”) to encourage student use and allow for propping the book open in front of a computer terminal. The textbook’s success contributed to the rising tide of FORTRAN books, broadening its appeal. McCracken also made programming seem interesting and approachable, distinguishing his author voice from that of the FORTRAN manual. Ken Thompson (see Figure Thompson, Ken10.1), the creator of Unix, later described the importance of learning FORTRAN in this way: “95 percent of the people who programmed in the early years would never have done it without FORTRAN. It was a massive step.”Unix31 Over time, FORTRAN dramatically increased the productivity of America’s engineering teams (see Figure 3.10).
But McCracken wasn’t finished. By the end of the 1970s, McCracken had become the author or co-author of over two dozen computer books which sold more than 1.6 million copies and were translated into 15 languages. He served as Vice President of the ACM from 1976 to 1978, and President of the ACM from 1978 to 1980. Although his work had an important impact on corporate and scientific computing, his commitment to social issues was equally significant. For example, he led an effort to develop social statements on the Vietnam War, the Equal Rights Amendment, human rights, and privacy issues.32 Considering his legacy as a bestselling author of computer titles, the New York Times simply described McCracken as the “Steven King of how-to Daniel McCracken’s primersprogramming books.”33 What is less well known is that McCracken used a portion of his royalties to fly around the country advocating for political and social issues.34 It was a furtive period of change in which peace activists mixed with research scientists, authors, and programmers.
Figure 3.10An engineering team at Digital Equipment Corporation pose in this undated photo. FORTRAN’s success dramatically increased the productivity of development groups.Formula translation (FORTRAN) (Courtesy of the Computer History Museum and DEC)
How broad was the appeal of the nascent learn-to-program movement? Daniel McCracken’s primers
The ACM was an active participant from the start. In 1961, ACM luminary Alan Perlis offered what may have been the first Perlis, Alanuniversal appeal for college students to learn how to program. Perlis suggested that all university freshmen take a programming class at the Carnegie Technical Institute to learn about computers and how they operated. His article, “The role of the digital computer in the university,” was published in the popular technical journal, Computers and Automation.35 Although Perlis preferred ALGOL, a concise high-level language that he co-developed, he was less interested in syntax and more interested in the patterns of computational Algorithmic Language (ALGOL)thinking. Professor Perlis was highly influential in how Computer Science was introduced in the universities, and his advice counted. He went on to join the ACM Computing Curriculum Committee, an influential standards body that proposed the first curriculum standards for Computer Science education in the mid-1960. The ACM also formed the Special Interest Group on Computers and Society (1969) in part to advocate for computer literacy.
3.6Logodesign by Seymour PapertSeymour Papert and Logo
Through FORTRAN, programming