改變 世界 的 九 大 演算 法

前言

電腦運算(computing)正在改變我們的社會,影響之深一如物理學和化學在過去兩百年為人類帶來的改變。數位科技幾乎全面影響你我的生活乃至於掀起革命,有鑑於電腦運算對現代社會的重要性,然而人們對造就這一切事物的基本概念所知卻如此有限,就顯得有些矛盾了。電腦科學的核心正是在研究這些概念,而這本約翰.麥考米克(John MacCormick)的新書,就是將這些概念傳達給一般讀者的少數書籍之一。

一般人對於電腦科學做為一門學科的體認相對欠缺,理由之一是在高中階段很少教導這些東西。物理和化學的入門課通常是必修,然而通常要到了大專、大學階段,才真正有電腦科學這門課。此外學校教的電腦運算或資訊與通信技術(Information and communication technology,簡稱ICT),通常只是使用套裝軟體的技術訓練,也難怪學生會覺得乏味。即使學生很自然地對於電腦技術應用在娛樂和通訊方面感到興趣,但卻因為印象中這些技術的創造缺乏學術的深度,使得他們的興趣沒有進一步發展。或許這就是過去十年來,美國研讀電腦科學的大學生人數減少了50%的原因。基於數位科技對現代社會的關鍵重要性,現在正是讓人們對電腦科學的奧祕重燃起興趣的最佳時機。

2008年,我有幸被選中在第180屆英國皇家科學院聖誕講座(Royal Institution Christmas Lectures)上台報告,這個活動是由偉大科學家法拉第(Michael Faraday)於1826年所發起。2008年的演講首度以電腦科學為主題,我在準備時花了很多時間思索該如何向普羅大眾介紹電腦科學,結果發現資源很少,幾乎沒有科普書能滿足這樣的需要,也因此這本書特別令人期待。

作者將複雜的電腦科學觀念很完美地傳達給讀者大眾,其中一些觀念的美與優雅,本身就值得大眾的關注。舉個例子:過去幾十年來,在公開管道上進行安全通訊一直是個棘手問題,直到人們想出了如何在網路上安全地傳送機密資訊(例如信用卡卡號),才造就了電子商務爆炸性的成長。在本書中,作者以比喻的方式來說明這些優雅的解決方案的來龍去脈,讀者不須具備電腦科學知識就可以理解。諸如此類的優點,使本書成為不可多得的科普書籍,我極力推薦。

----畢夏普(Chris Bishop),微軟劍橋研究中心卓越科學家、英國皇家學院副院長、愛丁堡大學資訊科學教授

Average rating 3.87  · 

 ·  1,480 ratings  ·  145 reviews

 | 

改變 世界 的 九 大 演算 法

Start your review of 改變世界的九大演算法:讓今日電腦無所不能的最強概念

改變 世界 的 九 大 演算 法

Physicist Richard Feynman remarked about scientists that if you can't explain what you are doing to your grandmother, then you don't understand what you are doing. That's from the guy who made common sense out of quantum electrodynamics (QED).

The sorry fact of the matter is that science relies upon obscure vocabulary, technical jargon and a maze of self-reference, a practice that holds the curious public at a comfortable two-arms-length distance. Important information is certainly conveyed throu

...more

改變 世界 的 九 大 演算 法

I should have read this book at the beginning of my career. On the other hand, after 10 years experience I may appreciate it even more.

改變 世界 的 九 大 演算 法

A surprisingly interesting and simple read (though perhaps overly simple in many parts) on some of the most important computer algorithms used today and how computer scientists solved for them. The writing is better than you would expect, the concepts are interesting (how google developed search algorithms, how secure transactions are run online, etc.), and the details are explained in a way so that no prior knowledge of algorithms or computer programming is necessary.

The only thing some readers

...more

改變 世界 的 九 大 演算 法

Nice insight into some of the programming concepts and tricks that sustain our information society.

改變 世界 的 九 大 演算 法

I like the premise of this book: Describe the key algorithms that make everyday computing possible in a simple accessible manner. Some of these algorithms include, indexing and pagerank which govern how search engines work, compression algorithms like JPEG which shrink the size of files, public key encryption which is the foundation for secure internet commerce and digital signatures, among others. I believe the author achieves his stated purpose which is to relate these beautiful and critical a ...more

改變 世界 的 九 大 演算 法

Enjoyed this very much. It is utterly enthralling, clearly written, and beautifully typeset. I think that, if people were exposed to this sort of technical clarity in concept early enough, we may have more interest in science and technology than we do in the U.S. currently (lack of interest does not seem to be much of a problem in parts of India, by contrast).

I am more familiar than I realized with the contents (at least in the first chapter), so there is not yet much "new" to me - but I've been

...more

改變 世界 的 九 大 演算 法

This book is actually not really targeted to computer scientists like me, since I knew 8 of the 9 algorithms described in the book (Internet searches and indices was the exception). However, it did remind me a bit of my college days. Instead, this book is targeted to people who aren't computer scientists and want to get a feel for what computer scientists think about and what they do. To that end, it's difficult to say how successful it is since I don't know how well it introduces the nine ideas ...more

改變 世界 的 九 大 演算 法

This is a great general introduction to some algorithms that are used every day. As a computer Scientist I have been exposed to the content already, but I still highly appreciated the way it was explained and compressed into short introductions. It is often very difficult to communicate (maybe I should just stop the sentence here) technical content, but I think MacCormick succeeds very well. I always recommend good short books like this, and I wouldn't mind if he had included a few more chapters ...more

改變 世界 的 九 大 演算 法

Review of John MacCormick, “9 Algorithms that Changed the Future,” Princeton University Press, 2012.

An algorithm is a well defined procedure for performing a task. A household example of an algorithm is a recipe — for example, the list of ingredients together with the sequence of instructions needed to bake a pie. In order for a computer to perform a task, it needs ingredients — the data — and instructions — the algorithm.

Author John MacCormick, currently Professor of Computer Science at Dickins

...more

改變 世界 的 九 大 演算 法

An interesting look at computer language and generally how computers work. It does a good job of introducing quite a few concepts but the explanations are lacking and his metaphors are slightly misleading.

改變 世界 的 九 大 演算 法

The book contains a lot of introductory information with a non technical intensive approach .
Although in my opinion not all the chapters are equal I found (search engine , page ranking , public keys) chapters to be the most valuable it might be tho just my personal preference . Overall the less of an it guy you are the more recommended this book is .

改變 世界 的 九 大 演算 法

Too simple, perhaps because I already knew something about the topics. I ended up a little bit annoyed by all the simple examples with colours and padlocks and gave it up. I would recommend it for someone who doesn't know anything about computer algorithms. ...more

改變 世界 的 九 大 演算 法

An accessible, clearly written, and interesting overview of the interesting ideas out there, without getting bogged down in the details of implementation. If you have a more tactical understanding of some of the algorithms described in this book - especially if you've ever had to do the challenging work of implementing any of these ideas in actual code - you may be tempted to write the book off as surface-level or gross oversimplification. But that's the point - any one of these topics could fil ...more

改變 世界 的 九 大 演算 法

Very good for starter. And best for making you to want more.

改變 世界 的 九 大 演算 法

It feels like something is missing in the explanations

In this book, MacCormick tries to do a hard task: explain some very important algorithms in a way anyone can understand. No technical background needed. The author selected nine algorithms by himself, using his own criteria of relevance. As expected, his list is controversial. Being a software engineer, with strong technical background, I consider some explanations provided by the author hard to follow. The author really tried to put the algo

...more

改變 世界 的 九 大 演算 法

Nine Algorithms That Changed the Future (2013) by John MacCormick is a well written good read that looks at exactly what the title suggests. The book covers indexing, pagerank, public key cryptography, error correcting codes, pattern recognition, data compression, database algorithms, digital signatures and also covers computability.
The chapters do involve thought and the book isn’t a completely light read. But it’s well worth it. Along with Patterns in The Stone this is one of the best books I’
...more

改變 世界 的 九 大 演算 法

Discuss computer science beyond programming is a great idea. MacCormick even compiled an interesting set of algorithms together with easy to follow explanations. The computability example was fun but the whole book still needs some work on its presentation. I felt a bit annoyed by the constant use of “to keep it simple as possible”; the whole thing should unfold smoothly.

改變 世界 的 九 大 演算 法

Best explanation on RSA I've read. Even better than its source material (The Code Book by Simon Singh) ...more

改變 世界 的 九 大 演算 法

Simple and interesting for a casual read. Too trivial for a computer scientist or programmer

改變 世界 的 九 大 演算 法

We tend to take for granted computer and internet technologies that enable us to surf the net, shop and bank online safely and reliably, and run software that does a whole host of tasks. We are so used to things working rather well that we forget - or never knew - what lies beneath in the hidden recesses of computer code.

Mr. MacCormick sets out to change our forgetting or not knowing, and he does a right good job of it. By giving us a brief history and an extended lay-person explanation of a nu

...more

改變 世界 的 九 大 演算 法

Simply and straightforwardly written, illustrated sparingly but usefully, this would make a great introductory text for programming in either high school or the first year of college. I could see assigning it in a composition course, even, since it teaches basic logic, deduction, and narrative-building techniques in order to teach these algorithms. I probably would not have grasped the implications of PGP (Pretty Good Privacy) encryption (which I read about more extensively in We Are Anonymou ...more

改變 世界 的 九 大 演算 法

I got this ebook in Chinese for some time already, but i hesitated to read it because it's about computer science. It turned out to be actually very interesting about how the search engine works.
With his very easy examples and explanations, i get to understand "public key cryptography", "pageRank", "hamming code", "two dimensional parity", "low density parity- check code", "nearest -neighbor classifier", " decision tree", "artificial neural network".
For how the zip files work, "same as earlier t
...more

改變 世界 的 九 大 演算 法

Big mistake: I should have bought a paper version of this book and not an electronic.

This is certainly not for everyone but I found it fascinating. I can't say that I understood it all despite being told by the author that I did not need to know the nitty-gritty of computer science. I think he was wrong. You certainly need to have a better knowledge than I had, to appreciate it some of the points he was making and these became more difficult as the book reached its conclusion. It would have been

...more

改變 世界 的 九 大 演算 法

I think I expected a bit more of this book (or of this title). Still a good read, but not particularly mind-boggling. Something didn't click for me in the way the author explains the algorithms - maybe it's the diluting/simplification, maybe the lack of the Math/CS background when presenting them... In the attempt to make the topics accessible, they became confusing/boring/simplistic. Many people love this book, though, so maybe it's just me, or maybe it has an opposite effect if you DO happen t ...more

改變 世界 的 九 大 演算 法

MacCormick really broke down the concepts to the level of a "common reader" whoever that may be. His explanations were completely weeded out of technicalities can be understood by anyone really. This is both a good thing and a bad thing. It is good if you know very little about algorithms and just want the gist of it but if you have prior knowledge then the book is too simplified.

An example is the RSA encryption protocol. John went on and on about padlock and keys and a lot of them until I lost

...more

改變 世界 的 九 大 演算 法

A very fun and informative book about some of the core appeals and functionalities in computer science. This book is an excellent read for those who are either considering pursuing the discipline further on their own or those who have no personal investment in the concepts presented, but would still like to be able to have intelligent discussions about the elements of modern technology which permeate our lives. This is an excellent and informative book which gets at the heart of a lot of modern ...more

改變 世界 的 九 大 演算 法

GREAT BOOK!!! I'm amazed at MacCormick's explanation of various algorithms and concepts! He makes complicated concepts very easy to understand and also interesting to read!

Although one regret I have is that I didn't read this book sooner. As an undergraduate student studying Computer Science and Mathematics, this book is way too simple for me and I regret that MacCormick had to omit certain more technical concepts to cater to more general public.

But other than that, I think this book is great!!!

...more

改變 世界 的 九 大 演算 法

The discussion of industry-changing algorithms at an elementary level was very much well done, largely in part due to the author's delivery of content. The construction of clever analogies in junction with real-world applications that were rigorous just as much they were simple made this an easy read.

This read requires no prerequisite knowledge of programming principles, languages, or frameworks; I recommend this book to those who want a glimpse into the world of computer science without being o

...more

改變 世界 的 九 大 演算 法

Despite the author's claims, some of this stuff would be pretty mysterious without any kind of a computer science background. On the other hand, a professional of computing technology would find themselves skipping over much of the content. The perfect level of prerequisite knowledge would be a university freshman or sophomore of computer science or related field. I think anyone could enjoy this book as long as they have an interest in technology. It holds up to time well; an updated version mig ...more

改變 世界 的 九 大 演算 法

Book describes couple interesting algorithms (page rank, digital signature, indexing, encrypting data, pattern recognition...) It is written in very easy language so all non tech people also should understand the main concept. For me (developer with couple years of experience) some of the information was still very interesting. From the book you can choose the chapters which are the most interesting for you and read only this. I think two of those chapters I will read in the future again.