Nine Algorithms That Changed the Future: The Ingenious Ideas That Drive Today's Computers
Nine Algorithms That Changed the Future: The Ingenious Ideas That Drive Today's Computers book cover

Nine Algorithms That Changed the Future: The Ingenious Ideas That Drive Today's Computers

Paperback – May 5, 2013

Price
$14.85
Format
Paperback
Pages
232
Publisher
Princeton University Press
Publication Date
ISBN-13
978-0691158198
Dimensions
6.25 x 1 x 9.25 inches
Weight
13.1 ounces

Description

"Honorable Mention for the 2012 Award for Best Professional/Scholarly Book in Computing & Information Sciences, Association of American Publishers"" Nine Algorithms That Changed the Future offers a great way to find out what computer science is really about. In this very readable book, MacCormick (a computer scientist at Dickinson College) shows how a collection of sets of intangible instructions invented since the 1940s has led to monumental changes in all our lives. . . . MacCormick provides a taste of why we computer scientists get so excited about algorithms--for their utility, of course, but also for their beauty and elegance." ---Paul Curzon, Science "MacCormick's book is an easy-to-read and enjoyable guide to some key algorithms. Above all, it conveys a sense of wonder--at the beautiful science, rather than the technical feats, that makes computers do their magic." ---Andreas Trabesinger, Nature Physics "Excellent. . . . MacCormick clearly believes that to be a responsible driver of current technology, you need to understand what is going on at the fundamental level. In addition, he wants us to take delight in the elegance of the solutions that have been developed to address complex questions of the security, integrity and availability of data and digital services. . . . This is an unusually well-written text suitable for anyone with an interest in how today's information systems really work." ---John Gilbey, Times Higher Education "Despite the widespread popular interest in computers, there are very few good, popular introductions to the central ideas of computer science. Nine Algorithms that Changed the Future is certainly one of the best that I have seen. . . . An extraordinary achievement in the daunting task of presenting computer science for a popular audience." ---Ernest Davis, SIAM News "Most people know little and care less about how, say, electronic payments are kept secure or how movies are crammed onto DVDs. But as MacCormick shows, they're the result of often stunning ingenuity and creativity. . . . For insights into the thinking that can turn gigabytes into gigabucks, start here." ---Robert Matthews, BBC Focus "[MacCormick] masterfully uses everyday analogies in a way that gets to the heart of the ideas (he calls them tricks) that make the algorithms work. While this is essential for readers without mathematical background, the other lesson that jumps out is that this is a great way to introduce these algorithms to mathematics and computer science students who will go on to more in-depth treatments. . . . This excellent survey is an outstanding achievement and would make an excellent library acquisition." ---Art Gittleman, MAA Reviews "MacCormick leaves the reader with a sense of the engine that powers the networked world. And at its best, Nine Algorithms enables you to recognise the real world and begin to see those algorithms alive and kicking all around us." ---Kevin Slavin, New Scientist " Nine Algorithms That Changed the Future is technically right on the money, but manages to explain things in ways that are both understandable and fun. . . . Each chapter starts out very simply, gradually building up more complex examples until you reach a full understanding of the algorithm being explained. . . . The writing is excellent: clear, precise, and fun. I highly recommend this book to anyone curious about the ingenious mathematical and algorithmic ideas underlying some of today's most ubiquitous technology." ---Brent Yorgey, Math Less Traveled "One of the best things about Nine Algorithms That Changed the Future is that it is of interest to computer professionals and innocent bystanders (non-professionals) alike. The author doesn't attempt to 'baffle us with science' or blow us away with his mathematical prowess. Instead, he employs simple analogies that we can all understand. His use of mixing colored paints to explain the machinations of public key cryptography is, frankly, brilliant. . . . I highly recommend this book as a very enjoyable read that will be of interest to anyone who would like to understand more about the way in which the computer systems we use every day perform their magic." ---Clive Maxfield, EE Times "In our increasingly digitally dominated world, any book that attempts to explain for the layperson 'the ingenious ideas that drive today's computers' should find a ready audience and become required reading for the curious, enthusiastic, responsible and attentive netizen. . . . [ Nine Algorithms That Changed the Future ] does indeed go a long way toward satisfying that need. . . . MacCormick's two main techniques for conveying his insights are metaphor and a stepwise progression of complexity, moving from usefully oversimplified examples to the actual algorithmic realities. . . . A real sense of the steady progression of computer science arises." ---Paul Di Filippo, Barnes and Noble Review "Unusual and engaging. . . . A clear and simple explanation of what it is that makes everyday business and personal computing work. . . . MacCormick has a knack of explaining the smart tricks behind how search engines work and why Google is the best; the cryptography that makes online payments safe (with a brilliant paint-mixing analogy for public keys); error correction of noisy signals; pattern recognition from handwritten postcodes to people's faces (his specialism); data compression in 'zip' files; database structures and certified digital signatures. . . . I raced through it and eagerly want to know more." ---Diana Hunter, Financial World "Algorithms are the controls that drive the engines of the Internet age. Here, MacCormick provides a popular account of several algorithms that affect people's everyday lives." ― Choice "John MacCormick's Nine Algorithms that Changed the Future joins a small set of books that have tried to communicate the nature of the field for a general audience. MacCormick provides something like a quick package tour, with stops at a few highlights--the 'great algorithms' of the title. . . . MacCormick has provided a nice introductory tour, suitable for those who are willing to commit to only a brief visit. Perhaps the taste that he provides will inspire some of those tourists to a more extensive exploration." ---Cary Gray, Books & Culture "This is a valuable addition to the popular computing literature. I would definitely recommend it for any university computer science collection, both for computing students and for those that are just interested. Larger public library systems would probably also benefit, especially for branches located near high schools. As for high schools, this is definitely the kind of book that could make a huge difference in the life of a young man or woman who's wavering about a career in computing." ---John Dupuis, Confessions of a Science Librarian "In Nine Algorithms that Changed the Future , John MacCormick illustrates the magical mix of tricks, genius, and raw number-crunching power that computers use to solve the everyday problems behind activities like web searches and secure online banking. This book stands out for presenting complicated algorithms in a way that is accessible to a wide variety of readers." ---Andrew M. C. Dawes, Books & Culture "[This is an] extraordinary achievement in the daunting task of presenting computer science for a popular audience." ---Ernest Davis, Popular (Computer) Science "MacCormick writes in a very clear, simple style, leading the reader step by step through even the most complex explanations." ---Wendy M Grossman, ZDNet "For a reader unskilled with computers, there's likely no better account of the software that underpins everything from Amazon to Facebook." ---Brett Szmajda, COSMOS Magazine "The book will certainly delight not only readers with little or no computer science background, but computer scientists as well." ---Y. Narahari, Current Science "The author gives enough detailed mathematical information to interest students at all levels but also has an intriguing way of explaining things for mathematicians. . . . I highly recommend this book to anyone--students and teachers of mathematics as well as nonmathematicians who, whether they realize it or not, use the main ideas of computer science every day." ---Anne Quinn, Mathematics Teacher "[N]o mathematics, no Computer Science with capitals but easy reading for everyone from 9 till 99. If you are a computer scientist yourself, you might find ideas about how to explain things, or you might find this book an excellent idea to give as a present to grandma so that you don't have to explain yourself." ---A. Bultheel, European Mathematical Society "These revolutionary algorithms have changed our world: this book unlocks their secrets, and lays bare the incredible ideas that our computers use every day." ― Zentralblatt MATH "An easy to read introduction to algorithms for a non-technical audience." ---Ben Everard, Linux Voice "It's been a long time since any book has given me the excitement I remember from reading Hawking and Feynman in my teens. This book does exactly that. It reminds me why I love computer science. MacCormick's explanations are easy to understand yet they tell the real story of how these algorithms actually work. This is a book that deserves not just to be admired, but celebrated." ―Andrew Fitzgibbon, creator of Emmy-winning camera software and consultant for the Xbox 360 Kinect "This book is for those who have wondered, 'What actually goes on in my computer?' MacCormick clearly explains some of the algorithms used by hundreds of millions of people daily. Not the simple algorithms like arithmetic and sorting, but more complex things such as how to determine the importance of web pages, if and when we are justified in trusting a computer-mediated conversation with another person, and the puzzling issue of what cannot be computed. I recommend it highly." ―Chuck Thacker, winner of the 2010 Turing Award "This is a delightful exploration, in layman's terms, of nine beautiful algorithms that are essential to today's computers. Using clever analogies, MacCormick gives readers a greater knowledge of both the technology they use every day and the intellectual underpinnings of computing. He combines a mathematician's appreciation of powerful ideas and an educator's skill at explaining them in an engaging way." ―Sharon Perl, Google "MacCormick picks nine algorithms for his version of 'genius awards,' and they are good ones. The reader comes away with a new sense of what genius in computer science looks like. And MacCormick leaves room for a future genius, perhaps inspired by this book, to someday make it a top ten list." ―William H. Press, coauthor of Numerical Recipes "John MacCormick has taken many of the algorithms that we rely on every day and explained them in a way that you can understand even if you have a meager mathematical background. I particularly like how he explains public-key cryptography by analogy to mixing paint." ―Thomas H. Cormen, Dartmouth College "MacCormick does a great job of explaining sophisticated ideas in a simple way, and his analogies are wonderful. I particularly enjoyed the thoughtful and detailed historical asides." ―Amy N. Langville, coauthor of Google's PageRank and Beyond: The Science of Search Engine Rankings "It's been a long time since any book has given me the excitement I remember from reading Hawking and Feynman in my teens. This book does exactly that. It reminds me why I love computer science. MacCormick's explanations are easy to understand yet they tell the real story of how these algorithms actually work. This is a book that deserves not just to be admired, but celebrated." --Andrew Fitzgibbon, creator of Emmy-winning camera software and consultant for the Xbox 360 Kinect "This book is for those who have wondered, 'What actually goes on in my computer?' MacCormick clearly explains some of the algorithms used by hundreds of millions of people daily. Not the simple algorithms like arithmetic and sorting, but more complex things such as how to determine the importance of web pages, if and when we are justified in trusting a computer-mediated conversation with another person, and the puzzling issue of what cannot be computed. I recommend it highly." --Chuck Thacker, winner of the 2010 Turing Award "This is a delightful exploration, in layman's terms, of nine beautiful algorithms that are essential to today's computers. Using clever analogies, MacCormick gives readers a greater knowledge of both the technology they use every day and the intellectual underpinnings of computing. He combines a mathematician's appreciation of powerful ideas and an educator's skill at explaining them in an engaging way." --Sharon Perl, Google "MacCormick picks nine algorithms for his version of 'genius awards,' and they are good ones. The reader comes away with a new sense of what genius in computer science looks like. And MacCormick leaves room for a future genius, perhaps inspired by this book, to someday make it a top ten list." --William H. Press, coauthor of Numerical Recipes "John MacCormick has taken many of the algorithms that we rely on every day and explained them in a way that you can understand even if you have a meager mathematical background. I particularly like how he explains public-key cryptography by analogy to mixing paint." --Thomas H. Cormen, Dartmouth College "MacCormick does a great job of explaining sophisticated ideas in a simple way, and his analogies are wonderful. I particularly enjoyed the thoughtful and detailed historical asides." --Amy N. Langville, coauthor of Google's PageRank and Beyond: The Science of Search Engine Rankings John MacCormick is a leading researcher and teacher of computer science. He has a PhD in computer vision from the University of Oxford, has worked in the research labs of Hewlett-Packard and Microsoft, and is currently a professor of computer science at Dickinson College. Read more

Features & Highlights

  • Nine revolutionary algorithms that power our computers and smartphones
  • Every day, we use our computers to perform remarkable feats. A simple web search picks out a handful of relevant needles from the world's biggest haystack: the billions of pages on the World Wide Web. Uploading a photo to Facebook transmits millions of pieces of information over numerous error-prone network links, yet somehow a perfect copy of the photo arrives intact. Without even knowing it, we use public-key cryptography to transmit secret information like credit card numbers; and we use digital signatures to verify the identity of the websites we visit. How do our computers perform these tasks with such ease?This is the first book to answer that question in language anyone can understand, revealing the extraordinary ideas that power our PCs, laptops, and smartphones. Using vivid examples, John MacCormick explains the fundamental "tricks" behind nine types of computer algorithms, including artificial intelligence (where we learn about the "nearest neighbor trick" and "twenty questions trick"), Google's famous PageRank algorithm (which uses the "random surfer trick"), data compression, error correction, and much more.These revolutionary algorithms have changed our world: this book unlocks their secrets, and lays bare the incredible ideas that our computers use every day.

Customer Reviews

Rating Breakdown

★★★★★
30%
(95)
★★★★
25%
(80)
★★★
15%
(48)
★★
7%
(22)
23%
(73)

Most Helpful Reviews

✓ Verified Purchase

Excellent book!

I nearly finish reading the John MacCornick book and I must say it is an excellent written book. Everyone could recommends or excludes some of the algorithms that he describes --values are choices, they aren't properties of the algorithm themselves-- but no one could say that any of them are worthless or with no impact in actual computational systems. The author style approach readers with a moderate level of understanding in computation. That said to remark my astonishing look reading to some Computer Science professional reviewers alleging difficulties understand it. Even to an experience programmer as myself, this book is an enjoyable journey through one of the most fascinating and essential areas of Computer Science: algorithms.

(Let me qualify myself. I'm an IT consultant with over 15 years of experience. I have two Microsoft certifications (MCDBA and MCSD, both VB6 and .NET), and a Master degree in Information Science. The discovery, invention and application of algorithms in Object-oriented programs with a dense use of design patterns is one of my lines of investigations.)
5 people found this helpful
✓ Verified Purchase

Excellent

If you are already an Expert in any of the 9 Areas explored here. then this is probably not for you. For those who complain that more interesting algorithms are not discussed - the Author does an excellent job explaining his rationale for what he includes and excludes (and I agree with his thesis - it would be hard for me to explain how recursion or shell short changed the world, But public key encryption - not a problem). This explains the fundamental concepts and it does it in a clear way requiring no advanced mathematics etc. and for that I appreciate and applaud this book. I Have read Other explanations of these topic sand have not come aware with a clear an understanding as I obtained from reading this slim Volume. Many authors seem to be obsessed with showing you how clever they are and how well they understand a topic - rather than help you reach the same level of understanding. For this reason I would rate this Volume as Excellent.
4 people found this helpful
✓ Verified Purchase

Its interesting and informative if you are a computer pro.

The book is a hard read, even for a computer pro. But the information in it was interesting. The casual computer user, in my opinion, would not even finish the first chapter. I have taught computer science and programming courses in high schools and colleges and would never recommend the book to my students.
3 people found this helpful
✓ Verified Purchase

Some computer algorithms for a general audience.

How do our computers today do things like communicate securely, perform searches of web pages and assure the integrity of our financial transactions? This book does an excellent job of explaining how the algorithms - programmed sequences of steps - that computers use to accomplish these feats (and others) work.

The explanations are targeted at people who don't know much, if anything, about how computers work, and don't necessarily have very much math background, but who are users of modern personal computers. People who are familiar with what their computers can do, but have no idea how they do it.

The book doesn't go very deeply into its subject, but it does an excellent job at what it sets out to do.

My favorite chapter is the one about public key encryption. The problem to be solved is this: say computers A and B want to communicate in the open, but they want to hide the meaning of their messages from other computers, that can read everything they are saying. They'll need to establish some secret keyword they can use to encrypt their communications. But they have to do this by passing information back and forth that anyone can read. To a layman, this probably sounds impossible. The author explains how in fact this is possible, and describes one of the algorithms that is used to do it. He explains it using things like the operation of clocks, and mixing paint. One has to pay close attention to what he is saying, but his explanation is clear, and none of the math is much beyond multiplication, and division (with the all important remainder).

Significantly, the author chose to explain algorithms for things that computer users would be familiar with, not things that only computer scientists and programmers would know about. For example, you won't find an explanation of the internals of compilers and operating systems in this book. He also ties in all of his explanations to the historical context (how, when, why and by whom were they developed). And he finishes each chapter with an explanation of how the algorithm he has explained relates to the one actually used today. (Sometimes he explains a simpler version than is used in practice, and sometimes the algorithm he explains is one of many that are actually used.)

The whole book is easy to read, with the qualification that one has to think and pay attention. The most abstract chapter is a late one on the subject of "computability" - what, if any are the limits of what computers can do? (This chapter is best read when one is free of distractions and able to concentrate. It's a subject that's very easy to get confused in - even with a clear explanation.)

The audience for this book would be people who want to have a greater appreciation for how their computers work and the genius that went into figuring it all out. Also, people who have a budding interest in computer science would profit from it. (And perhaps be motivated to learn more. If so, the author provides suggestions for further reading.) A more advanced audience might be bored (but not necessarily - the field of computer science is broad enough that not all of its practitioners will be familiar with all of its parts.)

It won't teach you how to program, and you won't learn how computer hardware works, but you will learn about some of the important and seemingly difficult problems that computers can tackle, and the steps they follow to do it.
1 people found this helpful
✓ Verified Purchase

Highly recommend

Very well put together and easy to understand for any learning level. It introduces must know subjects for any tech at a very general level that is great for those just starting out or just wanting to learn about how things work. It's also a very fun read!
1 people found this helpful
✓ Verified Purchase

Great read

I'm a software developer but this book is written at a level that is great for both a casual reader with an interest in algorithms
✓ Verified Purchase

Textbook

Book arrived in excellent condition.
✓ Verified Purchase

Great read

Great book! It explains a lot of technical material in any easy way to understand.
✓ Verified Purchase

Five Stars

the book was in great condition! Great deal.
✓ Verified Purchase

Five Stars

Really wonderful book. I used this for an AP computer science class and it was very helpful.