On Growth and Form


D'Arcy Wentworth Thompson - 1917
    Why do living things and physical phenomena take the forms they do? Analyzing the mathematical and physical aspects of biological processes, this historic work, first published in 1917, has become renowned as well for the poetry of is descriptions.

Deep Simplicity: Bringing Order to Chaos and Complexity


John Gribbin - 2004
    Now astrophysicist John Gribbin draws on his expertise to explore, in prose that communicates not only the wonder but the substance of cutting-edge science, the principles behind chaos and complexity. He reveals the remarkable ways these two revolutionary theories have been applied over the last twenty years to explain all sorts of phenomena–from weather patterns to mass extinctions.Grounding these paradigm-shifting ideas in their historical context, Gribbin also traces their development from Newton to Darwin to Lorenz, Prigogine, and Lovelock, demonstrating how–far from overturning all that has gone before–chaos and complexity are the triumphant extensions of simple scientific laws. Ultimately, Gribbin illustrates how chaos and complexity permeate the universe on every scale, governing the evolution of life and galaxies alike.

Peopleware: Productive Projects and Teams


Tom DeMarco - 1987
    The answers aren't easy -- just incredibly successful.

Why Greatness Cannot Be Planned: The Myth of the Objective


Kenneth O. Stanley - 2015
    In Why Greatness Cannot Be Planned, Stanley and Lehman begin with a surprising scientific discovery in artificial intelligence that leads ultimately to the conclusion that the objective obsession has gone too far. They make the case that great achievement can't be bottled up into mechanical metrics; that innovation is not driven by narrowly focused heroic effort; and that we would be wiser (and the outcomes better) if instead we whole-heartedly embraced serendipitous discovery and playful creativity.Controversial at its heart, yet refreshingly provocative, this book challenges readers to consider life without a destination and discovery without a compass.

Superforecasting: The Art and Science of Prediction


Philip E. Tetlock - 2015
    Unfortunately, people tend to be terrible forecasters. As Wharton professor Philip Tetlock showed in a landmark 2005 study, even experts’ predictions are only slightly better than chance. However, an important and underreported conclusion of that study was that some experts do have real foresight, and Tetlock has spent the past decade trying to figure out why. What makes some people so good? And can this talent be taught?   In Superforecasting, Tetlock and coauthor Dan Gardner offer a masterwork on prediction, drawing on decades of research and the results of a massive, government-funded forecasting tournament. The Good Judgment Project involves tens of thousands of ordinary people—including a Brooklyn filmmaker, a retired pipe installer, and a former ballroom dancer—who set out to forecast global events. Some of the volunteers have turned out to be astonishingly good. They’ve beaten other benchmarks, competitors, and prediction markets. They’ve even beaten the collective judgment of intelligence analysts with access to classified information. They are "superforecasters."   In this groundbreaking and accessible book, Tetlock and Gardner show us how we can learn from this elite group. Weaving together stories of forecasting successes (the raid on Osama bin Laden’s compound) and failures (the Bay of Pigs) and interviews with a range of high-level decision makers, from David Petraeus to Robert Rubin, they show that good forecasting doesn’t require powerful computers or arcane methods. It involves gathering evidence from a variety of sources, thinking probabilistically, working in teams, keeping score, and being willing to admit error and change course. Superforecasting offers the first demonstrably effective way to improve our ability to predict the future—whether in business, finance, politics, international affairs, or daily life—and is destined to become a modern classic.

The Nature of Technology: What It Is and How It Evolves


W. Brian Arthur - 2009
    Brian Arthur puts forth the first complete theory of the origins and evolution of technology, in a major work that achieves for the invention of new technologies what Darwin’s theory achieved for the emergence of new species. Brian Arthur is a pioneer of complexity theory and the discoverer of the highly influential "theory of increasing returns," which took Silicon Valley by storm, famously explaining why some high-tech companies achieve breakaway success. Now, in this long-awaited and ground-breaking book, he solves the great outstanding puzzle of technology—where do transformative new technologies come from?—putting forth the first full theory of how new technologies emerge and offering a definitive answer to the mystery of why some cultures—Silicon Valley, Cambridge, England in the 1920s—are so extraordinarily inventive. He has discovered that rather than springing from insight moments of individual genius, new technologies arise in a process akin to evolution. Technology evolves by creating itself out of itself, much as a coral reef builds itself from activities of small organisms. Drawing on a wealth of examples, from the most ancient to cutting-edge inventions of today, Arthur takes readers on a delightful intellectual journey, bringing to life the wonders of this process of technological evolution. The Nature of Technology is the work of one of our greatest thinkers at the top of his game, composing a classic for our times that is sure to generate wide acclaim.

The Shallows: What the Internet Is Doing to Our Brains


Nicholas Carr - 2010
    He also crystallized one of the most important debates of our time: As we enjoy the Net’s bounties, are we sacrificing our ability to read and think deeply?Now, Carr expands his argument into the most compelling exploration of the Internet’s intellectual and cultural consequences yet published. As he describes how human thought has been shaped through the centuries by “tools of the mind”—from the alphabet to maps, to the printing press, the clock, and the computer—Carr interweaves a fascinating account of recent discoveries in neuroscience by such pioneers as Michael Merzenich and Eric Kandel. Our brains, the historical and scientific evidence reveals, change in response to our experiences. The technologies we use to find, store, and share information can literally reroute our neural pathways.Building on the insights of thinkers from Plato to McLuhan, Carr makes a convincing case that every information technology carries an intellectual ethic—a set of assumptions about the nature of knowledge and intelligence. He explains how the printed book served to focus our attention, promoting deep and creative thought. In stark contrast, the Internet encourages the rapid, distracted sampling of small bits of information from many sources. Its ethic is that of the industrialist, an ethic of speed and efficiency, of optimized production and consumption—and now the Net is remaking us in its own image. We are becoming ever more adept at scanning and skimming, but what we are losing is our capacity for concentration, contemplation, and reflection.Part intellectual history, part popular science, and part cultural criticism, The Shallows sparkles with memorable vignettes—Friedrich Nietzsche wrestling with a typewriter, Sigmund Freud dissecting the brains of sea creatures, Nathaniel Hawthorne contemplating the thunderous approach of a steam locomotive—even as it plumbs profound questions about the state of our modern psyche. This is a book that will forever alter the way we think about media and our minds.

The Algorithm Design Manual


Steven S. Skiena - 1997
    Drawing heavily on the author's own real-world experiences, the book stresses design and analysis. Coverage is divided into two parts, the first being a general guide to techniques for the design and analysis of computer algorithms. The second is a reference section, which includes a catalog of the 75 most important algorithmic problems. By browsing this catalog, readers can quickly identify what the problem they have encountered is called, what is known about it, and how they should proceed if they need to solve it. This book is ideal for the working professional who uses algorithms on a daily basis and has need for a handy reference. This work can also readily be used in an upper-division course or as a student reference guide. THE ALGORITHM DESIGN MANUAL comes with a CD-ROM that contains: * a complete hypertext version of the full printed book. * the source code and URLs for all cited implementations. * over 30 hours of audio lectures on the design and analysis of algorithms are provided, all keyed to on-line lecture notes.

Elements of Information Theory


Thomas M. Cover - 1991
    Readers are provided once again with an instructive mix of mathematics, physics, statistics, and information theory.All the essential topics in information theory are covered in detail, including entropy, data compression, channel capacity, rate distortion, network information theory, and hypothesis testing. The authors provide readers with a solid understanding of the underlying theory and applications. Problem sets and a telegraphic summary at the end of each chapter further assist readers. The historical notes that follow each chapter recap the main points.The Second Edition features: * Chapters reorganized to improve teaching * 200 new problems * New material on source coding, portfolio theory, and feedback capacity * Updated referencesNow current and enhanced, the Second Edition of Elements of Information Theory remains the ideal textbook for upper-level undergraduate and graduate courses in electrical engineering, statistics, and telecommunications.

Genes vs Cultures vs Consciousness: A Brief Story of Our Computational Minds


Andres Campero - 2019
    It touches on its evolutionary development, its algorithmic nature and its scientific history by bridging ideas across Neuroscience, Computer Science, Biotechnology, Evolutionary History, Cognitive Science, Political Philosophy, and Artificial Intelligence.Never before had there been nearly as many scientists, resources or productive research focused on these topics, and humanity has achieved some understanding and some clarification. With the speed of progress it is timely to communicate an overreaching perspective, this book puts an emphasis on conveying the essential questions and what we know about their answers in a simple, clear and exciting way.Humans, along with the first RNA molecules, the first life forms, the first brains, the first conscious animals, the first societies and the first artificial agents constitute an amazing and crucial development in a path of increasingly complex computational intelligence. And yet, we occupy a minuscule time period in the history of Earth, a history that has been written by Genes, by Cultures and by Consciousnesses. If we abandon our anthropomorphic bias it becomes obvious that Humans are not so special after all. We are an important but short and transitory step among many others in a bigger story. The story of our computational minds, which is ours but not only ours. What is the relationship between computation, cognition and everything else? What is life and how did it originate? What is the role of culture in human minds? What do we know about the algorithmic nature of the mind, can we engineer it? What is the computational explanation of consciousness? What are some possible future steps in the evolution of minds? The underlying thread is the computational nature of the Mind which results from the mixture of Genes, Cultures and Consciousness. While these three interact in complex ways, they are ultimately computational systems on their own which appeared at different stages of history and which follow their own selective processes operating at different time scales. As technology progresses, the distinction between the three components materializes and will be a key determinant of the future.Among the many topics covered are the origin of life, the concept of computation and its relation to Turing Machines, cultural evolution and the notion of a Selfish Meme, free will and determinism, moral relativity, the hard problem of consciousness, the different theories of concepts from the perspective of cognitive science, the current status of AI and Machine Learning including the symbolic vs sub-symbolic dichotomy, the contrast between logical reasoning and neural networks, and the recent history of Deep Learning, Geoffrey Hinton, DeepMind and its algorithm AlphaGo. It also develops on the history of science and looks into the possible future building on the work of authors like Daniel Dennett, Yuval Harari, Richard Dawkins, Francis Crick, George Church, David Chalmers, Susan Carey, Stanislas Dehaene, Robert Boyd, Joseph Henrich, Daniel Kahneman, Moran Cerf, Josh Tenenbaum, David Deutsch, Steven Pinker, Ray Kurzweil, John von Neumann, Herbert Simon and many more. Andres Campero is a researcher and PhD student at the Brain and Cognitive Sciences Department and at the Computer Science and Artificial Intelligence Laboratory at the Massachusetts Institute of Technology (MIT).

Data Structures and Algorithms


Alfred V. Aho - 1983
    Algorithm design techniques are also stressed and basic algorithm analysis is covered. Most of the programs are written in Pascal.

R for Dummies


Joris Meys - 2012
    R is packed with powerful programming capabilities, but learning to use R in the real world can be overwhelming for even the most seasoned statisticians. This easy-to-follow guide explains how to use R for data processing and statistical analysis, and then, shows you how to present your data using compelling and informative graphics. You'll gain practical experience using R in a variety of settings and delve deeper into R's feature-rich toolset.Includes tips for the initial installation of RDemonstrates how to easily perform calculations on vectors, arrays, and lists of dataShows how to effectively visualize data using R's powerful graphics packagesGives pointers on how to find, install, and use add-on packages created by the R communityProvides tips on getting additional help from R mailing lists and websitesWhether you're just starting out with statistical analysis or are a procedural programming pro, "R For Dummies" is the book you need to get the most out of R.

Quantum Computing for Everyone


Chris Bernhardt - 2019
    In this book, Chris Bernhardt offers an introduction to quantum computing that is accessible to anyone who is comfortable with high school mathematics. He explains qubits, entanglement, quantum teleportation, quantum algorithms, and other quantum-related topics as clearly as possible for the general reader. Bernhardt, a mathematician himself, simplifies the mathematics as much as he can and provides elementary examples that illustrate both how the math works and what it means.Bernhardt introduces the basic unit of quantum computing, the qubit, and explains how the qubit can be measured; discusses entanglement--which, he says, is easier to describe mathematically than verbally--and what it means when two qubits are entangled (citing Einstein's characterization of what happens when the measurement of one entangled qubit affects the second as "spooky action at a distance"); and introduces quantum cryptography. He recaps standard topics in classical computing--bits, gates, and logic--and describes Edward Fredkin's ingenious billiard ball computer. He defines quantum gates, considers the speed of quantum algorithms, and describes the building of quantum computers. By the end of the book, readers understand that quantum computing and classical computing are not two distinct disciplines, and that quantum computing is the fundamental form of computing. The basic unit of computation is the qubit, not the bit.

Clean Code: A Handbook of Agile Software Craftsmanship


Robert C. Martin - 2007
    But if code isn't clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn't have to be that way. Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship . Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code on the fly into a book that will instill within you the values of a software craftsman and make you a better programmer but only if you work at it. What kind of work will you be doing? You'll be reading code - lots of code. And you will be challenged to think about what's right about that code, and what's wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft. Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code - of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and "smells" gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code. Readers will come away from this book understanding ‣ How to tell the difference between good and bad code‣ How to write good code and how to transform bad code into good code‣ How to create good names, good functions, good objects, and good classes‣ How to format code for maximum readability ‣ How to implement complete error handling without obscuring code logic ‣ How to unit test and practice test-driven development This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code.

Algorithms


Sanjoy Dasgupta - 2006
    Emphasis is placed on understanding the crisp mathematical idea behind each algorithm, in a manner that is intuitive and rigorous without being unduly formal. Features include: The use of boxes to strengthen the narrative: pieces that provide historical context, descriptions of how the algorithms are used in practice, and excursions for the mathematically sophisticated.Carefully chosen advanced topics that can be skipped in a standard one-semester course, but can be covered in an advanced algorithms course or in a more leisurely two-semester sequence.An accessible treatment of linear programming introduces students to one of the greatest achievements in algorithms. An optional chapter on the quantum algorithm for factoring provides a unique peephole into this exciting topic. In addition to the text, DasGupta also offers a Solutions Manual, which is available on the Online Learning Center.Algorithms is an outstanding undergraduate text, equally informed by the historical roots and contemporary applications of its subject. Like a captivating novel, it is a joy to read. Tim Roughgarden Stanford University