Once Upon an Algorithm: How Stories Explain Computing (The MIT Press)
by Martin Erwig
On This Page
Description
How Hansel and Gretel, Sherlock Holmes, the movie Groundhog Day, Harry Potter, and other familiar stories illustrate the concepts of computing. Picture a computer scientist, staring at a screen and clicking away frantically on a keyboard, hacking into a system, or perhaps developing an app. Now delete that picture. In Once Upon an Algorithm, Martin Erwig explains computation as something that takes place beyond electronic computers, and computer science as the study of systematic problem show more solving. Erwig points out that many daily activities involve problem solving. Getting up in the morning, for example: You get up, take a shower, get dressed, eat breakfast. This simple daily routine solves a recurring problem through a series of well-defined steps. In computer science, such a routine is called an algorithm. Erwig illustrates a series of concepts in computing with examples from daily life and familiar stories. Hansel and Gretel, for example, execute an algorithm to get home from the forest. The movie Groundhog Day illustrates the problem of unsolvability; Sherlock Holmes manipulates data structures when solving a crime; the magic in Harry Potter's world is understood through types and abstraction; and Indiana Jones demonstrates the complexity of searching. Along the way, Erwig also discusses representations and different ways to organize data; "intractable" problems; language, syntax, and ambiguity; control structures, loops, and the halting problem; different forms of recursion; and rules for finding errors in algorithms. This engaging book explains computation accessibly and shows its relevance to daily life. Something to think about next time we execute the algorithm of getting up in the morning. show lessTags
Recommendations
Member Reviews
The book is laid out systematically into Algorithms and Languages. It follows a storytelling way of explaining important concepts in Computer Science.
Part One covers -- Algorithms: Where you'll take a tour of Computation, Data-Structure, Problem Solving.
Part Two covers -- Languages where you'll start with the structure of languages and end with Types and Abstraction.
I like how the author defined Computation. Computation works by transformation representations.
Representation is the basis for Computation. I liked how the author quoted Wittgenstein, Frege in talking about languages. I've read their works and got excited as I saw their names.
Overall, an excellent book.
Deus Vult,
Gottfried
Part One covers -- Algorithms: Where you'll take a tour of Computation, Data-Structure, Problem Solving.
Part Two covers -- Languages where you'll start with the structure of languages and end with Types and Abstraction.
I like how the author defined Computation. Computation works by transformation representations.
Representation is the basis for Computation. I liked how the author quoted Wittgenstein, Frege in talking about languages. I've read their works and got excited as I saw their names.
Overall, an excellent book.
Deus Vult,
Gottfried
Ratings
Members
- Recently Added By
Author Information
5 Works 127 Members
Awards and Honors
Classifications
- Genres
- Technology, Nonfiction, General Nonfiction, Science & Nature
- DDC/MDS
- 005.1 — Computer science, information & general works Computer science, knowledge & systems Software development, software, data, security Software development
- LCC
- QA76.9 .A43 .E78 — Science Mathematics Mathematics Instruments and machines Calculating machines Electronic computers. Computer science
- BISAC
Statistics
- Members
- 120
- Popularity
- 270,274
- Reviews
- 1
- Rating
- (4.00)
- Languages
- English
- Media
- Paper, Audiobook, Ebook
- ISBNs
- 6
- ASINs
- 1






















































