SUNBURST and LUMINARY - An Apollo Memoir

Don Eyles - 2018
    His assignment is to program the complex lunar landing phase in the Lunar Module's onboard computer. As he masters his art the reader learns about the computer, the mission, and a bit about spacecraft navigation and meets a cast of interesting characters along the way. As Apollo 11 approaches, the author flies lunar landings in simulators and meets the astronauts who will fly the LM for real. He explains the computer alarms that almost prevented Neil Armstrong from landing and describes a narrow escape from another dangerous problem. He helps Pete Conrad achieve a pinpoint landing on Apollo 12, and works with Apollo 16 commander John Young on a technique for landing even more precisely. On Apollo 14 he devises a workaround when a faulty pushbutton threatens Alan Shepard's mission, earning a NASA award, a story in Rolling Stone, and a few lines in the history books. Along the way the author hits the high points of his eclectic personal life, as he enters adulthood in the 1960s. He writes for students of the Apollo project, for whom the development of the flight software is still largely unexplored territory, but also for the young coders of the current digital culture, who will get the author's observations on the art of programming and who may identify as he explores sex, drugs, and the other excitements of the era. The underlying thesis is that the American space program in the 1960s was successful not in spite of, but in large measure because of the idealism, the freedom of thought, and the sense of exploration, inner and outer, that prevailed in the culture during that period. The memoir concludes in a party atmosphere at the spectacular night launch of Apollo 17 before a glittery crowd an occasion that marked the high water mark, so far, of human space exploration.

Digital Apollo: Human and Machine in Spaceflight

David A. Mindell - 2008
    Neil Armstrong responded by switching off the automatic mode and taking direct control. He stopped monitoring the computer and began flying the spacecraft, relying on skill to land it and earning praise for a triumph of human over machine. In Digital Apollo, engineer-historian David Mindell takes this famous moment as a starting point for an exploration of the relationship between humans and computers in the Apollo program. In each of the six Apollo landings, the astronaut in command seized control from the computer and landed with his hand on the stick. Mindell recounts the story of astronauts' desire to control their spacecraft in parallel with the history of the Apollo Guidance Computer. From the early days of aviation through the birth of spaceflight, test pilots and astronauts sought to be more than "spam in a can" despite the automatic controls, digital computers, and software developed by engineers.Digital Apollo examines the design and execution of each of the six Apollo moon landings, drawing on transcripts and data telemetry from the flights, astronaut interviews, and NASA's extensive archives. Mindell's exploration of how human pilots and automated systems worked together to achieve the ultimate in flight -- a lunar landing -- traces and reframes the debate over the future of humans and automation in space. The results have implications for any venture in which human roles seem threatened by automated systems, whether it is the work at our desktops or the future of exploration.

Quantum Computing Since Democritus

Scott Aaronson - 2013
    Full of insights, arguments and philosophical perspectives, the book covers an amazing array of topics. Beginning in antiquity with Democritus, it progresses through logic and set theory, computability and complexity theory, quantum computing, cryptography, the information content of quantum states and the interpretation of quantum mechanics. There are also extended discussions about time travel, Newcomb's Paradox, the anthropic principle and the views of Roger Penrose. Aaronson's informal style makes this fascinating book accessible to readers with scientific backgrounds, as well as students and researchers working in physics, computer science, mathematics and philosophy.

The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography

Simon Singh - 1999
    From Mary, Queen of Scots, trapped by her own code, to the Navajo Code Talkers who helped the Allies win World War II, to the incredible (and incredibly simple) logisitical breakthrough that made Internet commerce secure, The Code Book tells the story of the most powerful intellectual weapon ever known: secrecy.Throughout the text are clear technical and mathematical explanations, and portraits of the remarkable personalities who wrote and broke the world’s most difficult codes. Accessible, compelling, and remarkably far-reaching, this book will forever alter your view of history and what drives it. It will also make you wonder how private that e-mail you just sent really is.

Code: The Hidden Language of Computer Hardware and Software

Charles Petzold - 1999
    And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries. Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone who’s ever wondered about the secret inner life of computers and other smart machines. It’s a cleverly illustrated and eminently comprehensible story—and along the way, you’ll discover you’ve gained a real context for understanding today’s world of PCs, digital media, and the Internet. No matter what your level of technical savvy, CODE will charm you—and perhaps even awaken the technophile within.

Stages to Saturn: A Technological History of the Apollo/Saturn Launch Vehicles

Roger E. Bilstein - 1997
    . . . Roger Bilstein gracefully wends his way through a maze of technical documentation to reveal the important themes of this story. Rarely has such a nuts-and-bolts tale been so gracefully told."—Air University Review"Easily the best book of the NASA History Series. . . . Starting with the earliest rockets, Bilstein traces the development of the family of massive Saturn launch vehicles that carried the Apollo astronauts to the moon and boosted Skylab into orbit."—Technology and CultureA classic study of the development of the Saturn launch vehicle that took Americans to the moon in the 1960s and 1970s, Stages to Saturn is one of the finest official histories ever produced. The Saturn rocket was developed as a means of accomplishing President John F. Kennedy's goal for the United States to reach the moon before the end of the decade. Without the Saturn V rocket, with its capability of sending as payload the Apollo Command and Lunar Modules--along with support equipment and three astronauts--more than a quarter of a million miles from earth, Kennedy's goal would have been unrealizable. Stages to Saturn not only tells the important story of the research and development of the Saturn rockets and the people who designed them but also recounts the stirring exploits of their operations, from orbital missions around earth testing Apollo equipment to their journeys to the moon and back.  Essential reading for anyone seeking to understand the development of space flight in America and the course of modern technology, this reprint edition includes a new preface by the author providing a 21st-century perspective on the historic importance of the Saturn project.Roger E. Bilstein is professor emeritus of history at the University of Houston, Clear Lake. Regarded as one of the nation’s premier aerospace historians, he is the author of six books, including Flight in America: From the Wrights to the Astronauts and Testing Aircraft, Exploring Space: An Illustrated History of NACA and NASA.

The Pattern on the Stone: The Simple Ideas that Make Computers Work

William Daniel Hillis - 1998
    What they don't realize—and what Daniel Hillis's short book brilliantly demonstrates—is that computers' seemingly complex operations can be broken down into a few simple parts that perform the same simple procedures over and over again.Computer wizard Hillis offers an easy-to-follow explanation of how data is processed that makes the operations of a computer seem as straightforward as those of a bicycle. Avoiding technobabble or discussions of advanced hardware, the lucid explanations and colorful anecdotes in The Pattern on the Stone go straight to the heart of what computers really do.Hillis proceeds from an outline of basic logic to clear descriptions of programming languages, algorithms, and memory. He then takes readers in simple steps up to the most exciting developments in computing today—quantum computing, parallel computing, neural networks, and self-organizing systems.Written clearly and succinctly by one of the world's leading computer scientists, The Pattern on the Stone is an indispensable guide to understanding the workings of that most ubiquitous and important of machines: the computer.

The Chip: How Two Americans Invented the Microchip and Launched a Revolution

T.R. Reid - 1984
    The world's brightest engineers were stymied in their quest to make these machines small and affordable until the solution finally came from two ingenious young Americans. Jack Kilby and Robert Noyce hit upon the stunning discovery that would make possible the silicon microchip, a work that would ultimately earn Kilby the Nobel Prize for physics in 2000. In this completely revised and updated edition of The Chip, T.R. Reid tells the gripping adventure story of their invention and of its growth into a global information industry. This is the story of how the digital age began.

Go, Flight!: The Unsung Heroes of Mission Control, 1965–1992

Rick Houston - 2015
    But among the talented men (and later women) who worked in mission control, the room located on the third floor of Building 30—at what is now Johnson Space Center—would become known by many as “The Cathedral.” These members of the space program were the brightest of their generations, making split-second decisions that determined the success or failure of a mission. The flight controllers, each supported by a staff of specialists, were the most visible part of the operation, running the missions, talking to the heavens, troubleshooting issues on board, and, ultimately, attempting to bring everyone safely back home. None of NASA’s storied accomplishments would have been possible without these people. Interviews with dozens of individuals who worked in the historic third-floor mission control room bring the compelling stories to life. Go, Flight! is a real-world reminder of where we have been and where we could go again given the right political and social climate.

The Elements of Computing Systems: Building a Modern Computer from First Principles

Noam Nisan - 2005
    The books also provides a companion web site that provides the toold and materials necessary to build the hardware and software.

Turing's Cathedral: The Origins of the Digital Universe

George Dyson - 2012
    In Turing’s Cathedral, George Dyson focuses on a small group of men and women, led by John von Neumann at the Institute for Advanced Study in Princeton, New Jersey, who built one of the first computers to realize Alan Turing’s vision of a Universal Machine. Their work would break the distinction between numbers that mean things and numbers that do things—and our universe would never be the same. Using five kilobytes of memory (the amount allocated to displaying the cursor on a computer desktop of today), they achieved unprecedented success in both weather prediction and nuclear weapons design, while tackling, in their spare time, problems ranging from the evolution of viruses to the evolution of stars. Dyson’s account, both historic and prophetic, sheds important new light on how the digital universe exploded in the aftermath of World War II. The proliferation of both codes and machines was paralleled by two historic developments: the decoding of self-replicating sequences in biology and the invention of the hydrogen bomb. It’s no coincidence that the most destructive and the most constructive of human inventions appeared at exactly the same time.  How did code take over the world? In retracing how Alan Turing’s one-dimensional model became John von Neumann’s two-dimensional implementation, Turing’s Cathedral offers a series of provocative suggestions as to where the digital universe, now fully three-dimensional, may be heading next.

Chariots for Apollo:: The Untold Story Behind the Race to the Moon

Charles Pellegrino - 1985
    Then, in 1961, John F. Kennedy challenged America -- and from Long Island to Cape Canaveral, Houston to Huntsville, an army of engineers, scientists, bureaucrats and astronauts were swept up into the effort. Somehow, America would put a man on the moon's surface and bring him back safely before the decade was over. But how?For eight frantic years the engineers would design and redesign, the scientists would argue, and brave men would trust their lives to virtually untested machinery. This dramatic chronicle of the race to the moon takes us behind the scenes of this awesome quest, into the minds of the people whose lives were devoted to it and changed by it, and through the missions themselves -- including the tragedy of Apollo 13. A riveting portrait of ingenuity, determination, and raw human courage, "Chariots for Apollo is the powerful story of how one society came together to reach its goal -- a quarter of a million miles away.

Grokking Algorithms An Illustrated Guide For Programmers and Other Curious People

Aditya Y. Bhargava - 2015
    The algorithms you'll use most often as a programmer have already been discovered, tested, and proven. If you want to take a hard pass on Knuth's brilliant but impenetrable theories and the dense multi-page proofs you'll find in most textbooks, this is the book for you. This fully-illustrated and engaging guide makes it easy for you to learn how to use algorithms effectively in your own programs.Grokking Algorithms is a disarming take on a core computer science topic. In it, you'll learn how to apply common algorithms to the practical problems you face in day-to-day life as a programmer. You'll start with problems like sorting and searching. As you build up your skills in thinking algorithmically, you'll tackle more complex concerns such as data compression or artificial intelligence. Whether you're writing business software, video games, mobile apps, or system utilities, you'll learn algorithmic techniques for solving problems that you thought were out of your grasp. For example, you'll be able to:Write a spell checker using graph algorithmsUnderstand how data compression works using Huffman codingIdentify problems that take too long to solve with naive algorithms, and attack them with algorithms that give you an approximate answer insteadEach carefully-presented example includes helpful diagrams and fully-annotated code samples in Python. By the end of this book, you will know some of the most widely applicable algorithms as well as how and when to use them.

The Go Programming Language

Alan A.A. Donovan - 2015
    It has been winning converts from dynamic language enthusiasts as well as users of traditional compiled languages. The former appreciate the robustness and efficiency that Go's lightweight type system brings to their code; the latter find Go's simplicity and fast tools a refreshing change. Thanks to its well-designed standard libraries and its excellent support for concurrent programming, Go is fast becoming the language of choice for distributed systems. The Go Programming Language is the definitive book on Go for the working programmer. It assumes no prior knowledge of Go, nor any other specific programming language, so you'll find it an accessible guide whether you come from JavaScript, Ruby, Python, Java, or C++. The book will quickly get you started using Go effectively from the beginning, and by the end, you will know how to use it well to write clear, idiomatic and efficient programs to solve real-world problems. You'll understand not just how to use its standard libraries, but how they work, and how to apply the same design techniques to your own projects. The earlier chapters will introduce you to the basic concepts of Go programming---numbers, strings, functions---while at the same time presenting important computer science concepts like recursion, and useful examples of graphics, UTF-8, and error handling. The chapters on methods and interfaces will show you a new way to think about object-oriented programming; the chapter on concurrency explains why concurrency is so important in modern programming, and how Go helps you handle it well. You'll also learn about Go's pragmatic but effective approach to testing; how to build, test, and manage projects using the go tool, and the art of metaprogramming using reflection. The book contains hundreds of interesting and practical examples that cover the whole language and a wide range of applications. The code samples from the book are available for download from

Feynman Lectures On Computation

Richard P. Feynman - 1996
    Feynman gave his famous course on computation at the California Institute of Technology, he asked Tony Hey to adapt his lecture notes into a book. Although led by Feynman, the course also featured, as occasional guest speakers, some of the most brilliant men in science at that time, including Marvin Minsky, Charles Bennett, and John Hopfield. Although the lectures are now thirteen years old, most of the material is timeless and presents a “Feynmanesque” overview of many standard and some not-so-standard topics in computer science such as reversible logic gates and quantum computers.