Python 3 Object Oriented Programming


Dusty Phillips - 2010
    Many examples are taken from real-world projects. The book focuses on high-level design as well as the gritty details of the Python syntax. The provided exercises inspire the reader to think about his or her own code, rather than providing solved problems. If you're new to Object Oriented Programming techniques, or if you have basic Python skills and wish to learn in depth how and when to correctly apply Object Oriented Programming in Python, this is the book for you. If you are an object-oriented programmer for other languages, you too will find this book a useful introduction to Python, as it uses terminology you are already familiar with. Python 2 programmers seeking a leg up in the new world of Python 3 will also find the book beneficial, and you need not necessarily know Python 2.

The Art of the Infinite: The Pleasures of Mathematics


Robert M. Kaplan - 1980
    The Times called it elegant, discursive, and littered with quotes and allusions from Aquinas via Gershwin to Woolf and The Philadelphia Inquirer praised it as absolutely scintillating. In this delightful new book, Robert Kaplan, writing together with his wife Ellen Kaplan, once again takes us on a witty, literate, and accessible tour of the world of mathematics. Where The Nothing That Is looked at math through the lens of zero, The Art of the Infinite takes infinity, in its countless guises, as a touchstone for understanding mathematical thinking. Tracing a path from Pythagoras, whose great Theorem led inexorably to a discovery that his followers tried in vain to keep secret (the existence of irrational numbers); through Descartes and Leibniz; to the brilliant, haunted Georg Cantor, who proved that infinity can come in different sizes, the Kaplans show how the attempt to grasp the ungraspable embodies the essence of mathematics. The Kaplans guide us through the Republic of Numbers, where we meet both its upstanding citizens and more shadowy dwellers; and we travel across the plane of geometry into the unlikely realm where parallel lines meet. Along the way, deft character studies of great mathematicians (and equally colorful lesser ones) illustrate the opposed yet intertwined modes of mathematical thinking: the intutionist notion that we discover mathematical truth as it exists, and the formalist belief that math is true because we invent consistent rules for it. Less than All, wrote William Blake, cannot satisfy Man. The Art of the Infinite shows us some of the ways that Man has grappled with All, and reveals mathematics as one of the most exhilarating expressions of the human imagination.

Let Over Lambda


Doug Hoyte - 2008
    Starting with the fundamentals, it describes the most advanced features of the most advanced language: Common Lisp. Only the top percentile of programmers use lisp and if you can understand this book you are in the top percentile of lisp programmers. If you are looking for a dry coding manual that re-hashes common-sense techniques in whatever langue du jour, this book is not for you. This book is about pushing the boundaries of what we know about programming. While this book teaches useful skills that can help solve your programming problems today and now, it has also been designed to be entertaining and inspiring. If you have ever wondered what lisp or even programming itself is really about, this is the book you have been looking for.

Mindstorms: Children, Computers, And Powerful Ideas


Seymour Papert - 1980
    We have Mindstorms to thank for that. In this book, pioneering computer scientist Seymour Papert uses the invention of LOGO, the first child-friendly programming language, to make the case for the value of teaching children with computers. Papert argues that children are more than capable of mastering computers, and that teaching computational processes like de-bugging in the classroom can change the way we learn everything else. He also shows that schools saturated with technology can actually improve socialization and interaction among students and between students and teachers.

A Mind at Play: How Claude Shannon Invented the Information Age


Jimmy Soni - 2017
    He constructed a fleet of customized unicycles and a flamethrowing trumpet, outfoxed Vegas casinos, and built juggling robots. He also wrote the seminal text of the digital revolution, which has been called “the Magna Carta of the Information Age.” His discoveries would lead contemporaries to compare him to Albert Einstein and Isaac Newton. His work anticipated by decades the world we’d be living in today—and gave mathematicians and engineers the tools to bring that world to pass.In this elegantly written, exhaustively researched biography, Jimmy Soni and Rob Goodman reveal Claude Shannon’s full story for the first time. It’s the story of a small-town Michigan boy whose career stretched from the era of room-sized computers powered by gears and string to the age of Apple. It’s the story of the origins of our digital world in the tunnels of MIT and the “idea factory” of Bell Labs, in the “scientists’ war” with Nazi Germany, and in the work of Shannon’s collaborators and rivals, thinkers like Alan Turing, John von Neumann, Vannevar Bush, and Norbert Wiener.And it’s the story of Shannon’s life as an often reclusive, always playful genius. With access to Shannon’s family and friends, A Mind at Play brings this singular innovator and creative genius to life.

Learn You a Haskell for Great Good!


Miran Lipovača - 2011
    Learn You a Haskell for Great Good! introduces programmers familiar with imperative languages (such as C++, Java, or Python) to the unique aspects of functional programming. Packed with jokes, pop culture references, and the author's own hilarious artwork, Learn You a Haskell for Great Good! eases the learning curve of this complex language, and is a perfect starting point for any programmer looking to expand his or her horizons. The well-known web tutorial on which this book is based is widely regarded as the best way for beginners to learn Haskell, and receives over 30,000 unique visitors monthly.

Boltzmanns Atom: The Great Debate That Launched a Revolution in Physics


David Lindley - 2001
    Before this explosive growth into the modern age took place, an all-but-forgotten genius strove for forty years to win acceptance for the atomic theory of matter and an altogether new way of doing physics. Ludwig Boltz-mann battled with philosophers, the scientific establishment, and his own potent demons. His victory led the way to the greatest scientific achievements of the twentieth century. Now acclaimed science writer David Lindley portrays the dramatic story of Boltzmann and his embrace of the atom, while providing a window on the civilized world that gave birth to our scientific era. Boltzmann emerges as an endearingly quixotic character, passionately inspired by Beethoven, who muddled through the practical matters of life in a European gilded age. Boltzmann's story reaches from fin de siecle Vienna, across Germany and Britain, to America. As the Habsburg Empire was crumbling, Germany's intellectual might was growing; Edinburgh in Scotland was one of the most intellectually fertile places on earth; and, in America, brilliant independent minds were beginning to draw on the best ideas of the bureaucratized old world.Boltzmann's nemesis in the field of theoretical physics at home in Austria was Ernst Mach, noted today in the term Mach I, the speed of sound. Mach believed physics should address only that which could be directly observed. How could we know that frisky atoms jiggling about corresponded to heat if we couldn't see them? Why should we bother with theories that only told us what would probably happen, rather than making an absolute prediction? Mach and Boltzmann both believed in the power of science, but their approaches to physics could not have been more opposed. Boltzmann sought to explain the real world, and cast aside any philosophical criteria. Mach, along with many nineteenth-century scientists, wanted to construct an empirical edifice of absolute truths that obeyed strict philosophical rules. Boltzmann did not get on well with authority in any form, and he did his best work at arm's length from it. When at the end of his career he engaged with the philosophical authorities in the Viennese academy, the results were personally disastrous and tragic. Yet Boltzmann's enduring legacy lives on in the new physics and technology of our wired world.Lindley's elegant telling of this tale combines the detailed breadth of the best history, the beauty of theoretical physics, and the psychological insight belonging to the finest of novels.

Archimedes' Revenge: The Joys and Perils of Mathematics


Paul Hoffman - 1988
    An extremely clever account.--The New Yorker.

Mathematician's Delight


W.W. Sawyer - 1943
    Many people regard mathematicians as a race apart, possessed of almost supernatural powers. While this is very flattering for successful mathematicians, it is very bad for those who, for one reason or another, are attempting to learn the subject.'W.W. Sawyer's deep understanding of how we learn and his lively, practical approach have made this an ideal introduction to mathematics for generations of readers. By starting at the level of simple arithmetic and algebra and then proceeding step by step through graphs, logarithms and trigonometry to calculus and the dizzying world of imaginary numbers, the book takes the mystery out of maths. Throughout, Sawyer reveals how theory is subordinate to the real-life applications of mathematics - the Pyramids were built on Euclidean principles three thousand years before Euclid formulated them - and celebrates the sheer intellectual stimulus of mathematics at its best.

Street-Fighting Mathematics: The Art of Educated Guessing and Opportunistic Problem Solving


Sanjoy Mahajan - 2010
    Traditional mathematics teaching is largely about solving exactly stated problems exactly, yet life often hands us partly defined problems needing only moderately accurate solutions. This engaging book is an antidote to the rigor mortis brought on by too much mathematical rigor, teaching us how to guess answers without needing a proof or an exact calculation.In Street-Fighting Mathematics, Sanjoy Mahajan builds, sharpens, and demonstrates tools for educated guessing and down-and-dirty, opportunistic problem solving across diverse fields of knowledge--from mathematics to management. Mahajan describes six tools: dimensional analysis, easy cases, lumping, picture proofs, successive approximation, and reasoning by analogy. Illustrating each tool with numerous examples, he carefully separates the tool--the general principle--from the particular application so that the reader can most easily grasp the tool itself to use on problems of particular interest. Street-Fighting Mathematics grew out of a short course taught by the author at MIT for students ranging from first-year undergraduates to graduate students ready for careers in physics, mathematics, management, electrical engineering, computer science, and biology. They benefited from an approach that avoided rigor and taught them how to use mathematics to solve real problems.Street-Fighting Mathematics will appear in print and online under a Creative Commons Noncommercial Share Alike license.

Cracking the Coding Interview: 150 Programming Questions and Solutions


Gayle Laakmann McDowell - 2008
    This is a deeply technical book and focuses on the software engineering skills to ace your interview. The book is over 500 pages and includes 150 programming interview questions and answers, as well as other advice.The full list of topics are as follows:The Interview ProcessThis section offers an overview on questions are selected and how you will be evaluated. What happens when you get a question wrong? When should you start preparing, and how? What language should you use? All these questions and more are answered.Behind the ScenesLearn what happens behind the scenes during your interview, how decisions really get made, who you interview with, and what they ask you. Companies covered include Google, Amazon, Yahoo, Microsoft, Apple and Facebook.Special SituationsThis section explains the process for experience candidates, Program Managers, Dev Managers, Testers / SDETs, and more. Learn what your interviewers are looking for and how much code you need to know.Before the InterviewIn order to ace the interview, you first need to get an interview. This section describes what a software engineer's resume should look like and what you should be doing well before your interview.Behavioral PreparationAlthough most of a software engineering interview will be technical, behavioral questions matter too. This section covers how to prepare for behavioral questions and how to give strong, structured responses.Technical Questions (+ 5 Algorithm Approaches)This section covers how to prepare for technical questions (without wasting your time) and teaches actionable ways to solve the trickiest algorithm problems. It also teaches you what exactly "good coding" is when it comes to an interview.150 Programming Questions and AnswersThis section forms the bulk of the book. Each section opens with a discussion of the core knowledge and strategies to tackle this type of question, diving into exactly how you break down and solve it. Topics covered include• Arrays and Strings• Linked Lists• Stacks and Queues• Trees and Graphs• Bit Manipulation• Brain Teasers• Mathematics and Probability• Object-Oriented Design• Recursion and Dynamic Programming• Sorting and Searching• Scalability and Memory Limits• Testing• C and C++• Java• Databases• Threads and LocksFor the widest degree of readability, the solutions are almost entirely written with Java (with the exception of C / C++ questions). A link is provided with the book so that you can download, compile, and play with the solutions yourself.Changes from the Fourth Edition: The fifth edition includes over 200 pages of new content, bringing the book from 300 pages to over 500 pages. Major revisions were done to almost every solution, including a number of alternate solutions added. The introductory chapters were massively expanded, as were the opening of each of the chapters under Technical Questions. In addition, 24 new questions were added.Cracking the Coding Interview, Fifth Edition is the most expansive, detailed guide on how to ace your software development / programming interviews.

The Quantum Zoo: A Tourist's Guide to the Neverending Universe


Marcus Chown - 2006
    Together, they explain virtually everything about the world we live in. But, almost a century after their advent, most people haven't the slightest clue what either is about. Did you know that there's so much empty space inside matter that the entire human race could be squeezed into the volume of a sugar cube? Or that you grow old more quickly on the top floor of a building than on the ground floor? And did you realize that 1 per cent of the static on a TV tuned between stations is the relic of the Big Bang? These and many other remarkable facts about the world are direct consequences of quantum physics and relativity. Quantum theory has literally made the modern world possible. Not only has it given us lasers, computers, and nuclear reactors, but it has provided an explanation of why the sun shines and why the ground beneath our feet is solid. Despite this, however, quantum theory and relativity remain a patchwork of fragmented ideas, vaguely understood at best and often utterly mysterious. average person. Author Marcus Chown emphatically disagrees. As Einstein himself said, Most of the fundamental ideas of science are essentially simple and may, as a rule, be expressed in a language comprehensible to everyone. If you think that the marvels of modern physics have passed you by, it is not too late. In Chown's capable hands, quantum physics and relativity are not only painless but downright fun. So sit back, relax, and get comfortable as an adept and experienced science communicator brings you quickly up to speed on some of the greatest ideas in the history of human thought.

The Cosmic Landscape: String Theory and the Illusion of Intelligent Design


Leonard Susskind - 2005
    Line drawings.

Game Changer: AlphaZero's Groundbreaking Chess Strategies and the Promise of AI


Matthew Sadler - 2019
    The artificial intelligence system, created by DeepMind, had been fed nothing but the rules of the Royal Game when it beat the world’s strongest chess engine in a prolonged match. The selection of ten games published in December 2017 created a worldwide sensation: how was it possible to play in such a brilliant and risky style and not lose a single game against an opponent of superhuman strength?For Game Changer, Matthew Sadler and Natasha Regan investigated more than two thousand previously unpublished games by AlphaZero. They also had unparalleled access to its team of developers and were offered a unique look ‘under the bonnet’ to grasp the depth and breadth of AlphaZero’s search. Sadler and Regan reveal its thinking process and tell the story of the human motivation and the techniques that created AlphaZero.Game Changer also presents a collection of lucidly explained chess games of astonishing quality. Both professionals and club players will improve their game by studying AlphaZero’s stunning discoveries in every field that matters: opening preparation, piece mobility, initiative, attacking techniques, long-term sacrifices and much more.The story of AlphaZero has a wider impact. Game Changer offers intriguing insights into the opportunities and horizons of Artificial Intelligence. Not just in solving games, but in providing solutions for a wide variety of challenges in society.With a foreword by former World Chess Champion Garry Kasparov and an introduction by DeepMind CEO Demis Hassabis.Matthew Sadler (1974) is a Grandmaster who twice won the British Championship and was awarded an individual Gold Medal at the 1996 Olympiad. He has authored several highly acclaimed books on chess and has been writing the famous ‘Sadler on Books’ column for New In Chess magazine for many years. Natasha Regan is a Women’s International Master from England who achieved a degree in mathematics from Cambridge University. Matthew Sadler and Natasha Regan won the English Chess Federation 2016 Book of the Award for their book Chess for Life.

MATLAB: A Practical Introduction to Programming and Problem Solving


Stormy Attaway - 2009
    It is the only book that gives a full introduction to programming in MATLAB combined with an explanation of MATLAB's powerful functions. The book differs from other texts in that it teaches programming concepts and the use of the built-in functions in MATLAB simultaneously. It presents programming concepts and MATLAB built-in functions side-by-side, giving students the ability to program efficiently and exploit the power of MATLAB to solve problems. The systematic, step-by-step approach, building on concepts throughout the book, facilitates easier learning.Starting with basic programming concepts, such as variables, assignments, input/output, selection, and loop statements, problems are introduced and solved throughout the book. The book is organized into two parts. Part I covers the programming constructs and demonstrates programming versus efficient use of built-in functions to solve problems. Part II describes the applications, including plotting, image processing, and mathematics, needed in basic problem solving. The chapters feature sections called Quick Question! as well as practice problems designed to test knowledge about the material covered. Problems are solved using both The Programming Concept and The Efficient Method, which facilitates understanding the efficient ways of using MATLAB, and also the programming concepts used in these efficient functions and operators. There are also sections on 'common pitfalls' and 'programming guidelines' that direct students towards best practice.This book is ideal for engineers learning to program and model in MATLAB, as well as undergraduates in engineering and science taking a course on MATLAB.