Hacking: The Art of Exploitation


Jon Erickson - 2003
    This book explains the technical aspects of hacking, including stack based overflows, heap based overflows, string exploits, return-into-libc, shellcode, and cryptographic attacks on 802.11b.

Stephen Hawking's Universe: The Cosmos Explained


David Filkin - 1997
    Now, in everyday language, Stephen Hawking's Universe reveals step-by-step how we can all share his understanding of the cosmos, and our own place within it. Stargazing has never been the same since cosmologists discovered that galaxies are moving away from each other at an extraordinary speed. It was this understanding of the movement of galaxies that allowed scientists to develop a theory of how the universe was created—the Big Bang theory. Working with this theory, Stephen Hawking and other physicists felt challenged to come up with a scientific picture that would tackle the fundamental question: what is the nature of the universe? Stephen Hawking's Universe charts this work and provides simple explanations for phenomena that arouse our curiosity. This work is a voyage of discovery with an astonishing set of conclusions that will enable us to understand how matter can be produced from nothing at all and will provide us with an explanation for the basis of our existence and that of everything around us.

Structure and Interpretation of Computer Programs


Harold Abelson - 1984
    This long-awaited revision contains changes throughout the text. There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published. A new theme has been introduced that emphasizes the central role played by different approaches to dealing with time in computational models: objects with state, concurrent programming, functional programming and lazy evaluation, and nondeterministic programming. There are new example sections on higher-order procedures in graphics and on applications of stream processing in numerical programming, and many new exercises. In addition, all the programs have been reworked to run in any Scheme implementation that adheres to the IEEE standard.

Project Orion: The True Story of the Atomic Spaceship


George Dyson - 2002
    41 illustrations.

Fundamentals of Thermodynamics


Richard E. Sonntag - 2002
    

The Fractal Geometry of Nature


Benoît B. Mandelbrot - 1977
    The complexity of nature's shapes differs in kind, not merely degree, from that of the shapes of ordinary geometry, the geometry of fractal shapes.Now that the field has expanded greatly with many active researchers, Mandelbrot presents the definitive overview of the origins of his ideas and their new applications. The Fractal Geometry of Nature is based on his highly acclaimed earlier work, but has much broader and deeper coverage and more extensive illustrations.

Building Microservices: Designing Fine-Grained Systems


Sam Newman - 2014
    But developing these systems brings its own set of headaches. With lots of examples and practical advice, this book takes a holistic view of the topics that system architects and administrators must consider when building, managing, and evolving microservice architectures.Microservice technologies are moving quickly. Author Sam Newman provides you with a firm grounding in the concepts while diving into current solutions for modeling, integrating, testing, deploying, and monitoring your own autonomous services. You'll follow a fictional company throughout the book to learn how building a microservice architecture affects a single domain.Discover how microservices allow you to align your system design with your organization's goalsLearn options for integrating a service with the rest of your systemTake an incremental approach when splitting monolithic codebasesDeploy individual microservices through continuous integrationExamine the complexities of testing and monitoring distributed servicesManage security with user-to-service and service-to-service modelsUnderstand the challenges of scaling microservice architectures

Visual Complex Analysis


Tristan Needham - 1997
    Aimed at undergraduate students in mathematics, physics, and engineering, the book's intuitive explanations, lack ofadvanced prerequisites, and consciously user-friendly prose style will help students to master the subject more readily than was previously possible. The key to this is the book's use of new geometric arguments in place of the standard calculational ones. These geometric arguments are communicatedwith the aid of hundreds of diagrams of a standard seldom encountered in mathematical works. A new approach to a classical topic, this work will be of interest to students in mathematics, physics, and engineering, as well as to professionals in these fields.

Python Crash Course: A Hands-On, Project-Based Introduction to Programming


Eric Matthes - 2015
    You'll also learn how to make your programs interactive and how to test your code safely before adding it to a project. In the second half of the book, you'll put your new knowledge into practice with three substantial projects: a Space Invaders-inspired arcade game, data visualizations with Python's super-handy libraries, and a simple web app you can deploy online.As you work through Python Crash Course, you'll learn how to: Use powerful Python libraries and tools, including matplotlib, NumPy, and PygalMake 2D games that respond to keypresses and mouse clicks, and that grow more difficult as the game progressesWork with data to generate interactive visualizationsCreate and customize simple web apps and deploy them safely onlineDeal with mistakes and errors so you can solve your own programming problemsIf you've been thinking seriously about digging into programming, Python Crash Course will get you up to speed and have you writing real programs fast. Why wait any longer? Start your engines and code!

Design Patterns: Elements of Reusable Object-Oriented Software


Erich Gamma - 1994
    Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves.The authors begin by describing what patterns are and how they can help you design object-oriented software. They then go on to systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems. With Design Patterns as your guide, you will learn how these important patterns fit into the software development process, and how you can leverage them to solve your own design problems most efficiently. Each pattern describes the circumstances in which it is applicable, when it can be applied in view of other design constraints, and the consequences and trade-offs of using the pattern within a larger design. All patterns are compiled from real systems and are based on real-world examples. Each pattern also includes code that demonstrates how it may be implemented in object-oriented programming languages like C++ or Smalltalk.

Humble Pi: A Comedy of Maths Errors


Matt Parker - 2019
    Most of the time this math works quietly behind the scenes . . . until it doesn't. All sorts of seemingly innocuous mathematical mistakes can have significant consequences.Math is easy to ignore until a misplaced decimal point upends the stock market, a unit conversion error causes a plane to crash, or someone divides by zero and stalls a battleship in the middle of the ocean.Exploring and explaining a litany of glitches, near misses, and mathematical mishaps involving the internet, big data, elections, street signs, lotteries, the Roman Empire, and an Olympic team, Matt Parker uncovers the bizarre ways math trips us up, and what this reveals about its essential place in our world. Getting it wrong has never been more fun.

Astro Turf: The Private Life of Rocket Science


M.G. Lord - 2005
    G. Lord was becoming a teenager in Southern California and her mother was dying of cancer, Lord's father-an archetypal, remote, rocket engineer- disappeared into his work at the Jet Propulsion Laboratory in Pasadena, building the space probes of the Mariner Mars 69 mission. Thirty years later, Lord found herself reporting on the JPL, triggering childhood memories and a desire to revisit her past as a way of understanding the ethos of rocket science. Astro Turf is the brilliant result of her journey of discovery.Remembering her pain at her father's absence, yet intrigued by what he did, Lord captures him on the page as she recalls her own youthful, eccentric fascination with science and space exploration. Into her family's saga she weaves the story of the legendary JPL- examining the complexities of its cultural history, from its start in 1936 to the triumphant Mars landings in 2004. She illuminates its founder, Frank Malina, whose brilliance in rocketry was shadowed by a flirtation with communism, driving him from the country even as we welcomed Wernher von Braun and his Nazi colleagues. Lord's own love of science fiction becomes a lens through which she views a profound cultural shift in the male-dominated world of space. And in pursuing the cause of her father's absence she stumbles on a hidden guilt, understanding "the anguish his proud silence caused both him and me, and how rooted that silence was in the culture of engineering."As in her acclaimed book Forever Barbie, which demystified an icon of feminine culture, Lord brings her penetrating insight to bear on a bastion of American masculinity, opening our eyes in unexpected and memorable ways.

Compilers: Principles, Techniques, and Tools


Alfred V. Aho - 1986
    The authors present updated coverage of compilers based on research and techniques that have been developed in the field over the past few years. The book provides a thorough introduction to compiler design and covers topics such as context-free grammars, fine state machines, and syntax-directed translation.

American Moonshot: John F. Kennedy and the Great Space Race


Douglas Brinkley - 2019
    Kennedy’s inspiring challenge, and America’s race to the moon.“We choose to go to the Moon in this decade and do the other things, not because they are easy, but because they are hard; because that goal will serve to organize and measure the best of our energies and skills, because that challenge is one that we are willing to accept, one we are unwilling to postpone, and one we intend to win.”—President John F. KennedyOn May 25, 1961, JFK made an astonishing announcement: his goal of putting a man on the moon by the end of the decade. In this engrossing, fast-paced epic, Douglas Brinkley returns to the 1960s to recreate one of the most exciting and ambitious achievements in the history of humankind. American Moonshot brings together the extraordinary political, cultural, and scientific factors that fueled the birth and development of NASA and the Mercury, Gemini and Apollo projects, which shot the United States to victory in the space race against the Soviet Union at the height of the Cold War.Drawing on new primary source material and major interviews with many of the surviving figures who were key to America’s success, Brinkley brings this fascinating history to life as never before. American Moonshot is a portrait of the brilliant men and women who made this giant leap possible, the technology that enabled us to propel men beyond earth’s orbit to the moon and return them safely, and the geopolitical tensions that spurred Kennedy to commit himself fully to this audacious dream. Brinkley’s ensemble cast of New Frontier characters include rocketeer Wernher von Braun, astronaut John Glenn and space booster Lyndon Johnson.A vivid and enthralling chronicle of one of the most thrilling, hopeful, and turbulent eras in the nation’s history, American Moonshot is an homage to scientific ingenuity, human curiosity, and the boundless American spirit.

Applied Cryptography: Protocols, Algorithms, and Source Code in C


Bruce Schneier - 1993
    … The book the National Security Agency wanted never to be published." –Wired Magazine "…monumental… fascinating… comprehensive… the definitive work on cryptography for computer programmers…" –Dr. Dobb's Journal"…easily ranks as one of the most authoritative in its field." —PC Magazine"…the bible of code hackers." –The Millennium Whole Earth CatalogThis new edition of the cryptography classic provides you with a comprehensive survey of modern cryptography. The book details how programmers and electronic communications professionals can use cryptography—the technique of enciphering and deciphering messages-to maintain the privacy of computer data. It describes dozens of cryptography algorithms, gives practical advice on how to implement them into cryptographic software, and shows how they can be used to solve security problems. Covering the latest developments in practical cryptographic techniques, this new edition shows programmers who design computer applications, networks, and storage systems how they can build security into their software and systems. What's new in the Second Edition? * New information on the Clipper Chip, including ways to defeat the key escrow mechanism * New encryption algorithms, including algorithms from the former Soviet Union and South Africa, and the RC4 stream cipher * The latest protocols for digital signatures, authentication, secure elections, digital cash, and more * More detailed information on key management and cryptographic implementations