A fascinating exploration of how insights from computer algorithms can be applied to our everyday lives, helping to solve common decision-making problems and illuminate the workings of the human mind All our lives are constrained by limited space and time, limits that give rise to a particular set of problems. What should we do, or leave undone, in a day or a lifetime? How A fascinating exploration of how insights from computer algorithms can be applied to our everyday lives, helping to solve common decision-making problems and illuminate the workings of the human mind All our lives are constrained by limited space and time, limits that give rise to a particular set of problems. What should we do, or leave undone, in a day or a lifetime? How much messiness should we accept? What balance of new activities and familiar favorites is the most fulfilling? These may seem like uniquely human quandaries, but they are not: computers, too, face the same constraints, so computer scientists have been grappling with their version of such issues for decades. And the solutions they've found have much to teach us. In a dazzlingly interdisciplinary work, acclaimed author Brian Christian and cognitive scientist Tom Griffiths show how the algorithms used by computers can also untangle very human questions. They explain how to have better hunches and when to leave things to chance, how to deal with overwhelming choices and how best to connect with others. From finding a spouse to finding a parking spot, from organizing one's inbox to understanding the workings of memory, Algorithms to Live By transforms the wisdom of computer science into strategies for human living.

# Algorithms to Live By: The Computer Science of Human Decisions

A fascinating exploration of how insights from computer algorithms can be applied to our everyday lives, helping to solve common decision-making problems and illuminate the workings of the human mind All our lives are constrained by limited space and time, limits that give rise to a particular set of problems. What should we do, or leave undone, in a day or a lifetime? How A fascinating exploration of how insights from computer algorithms can be applied to our everyday lives, helping to solve common decision-making problems and illuminate the workings of the human mind All our lives are constrained by limited space and time, limits that give rise to a particular set of problems. What should we do, or leave undone, in a day or a lifetime? How much messiness should we accept? What balance of new activities and familiar favorites is the most fulfilling? These may seem like uniquely human quandaries, but they are not: computers, too, face the same constraints, so computer scientists have been grappling with their version of such issues for decades. And the solutions they've found have much to teach us. In a dazzlingly interdisciplinary work, acclaimed author Brian Christian and cognitive scientist Tom Griffiths show how the algorithms used by computers can also untangle very human questions. They explain how to have better hunches and when to leave things to chance, how to deal with overwhelming choices and how best to connect with others. From finding a spouse to finding a parking spot, from organizing one's inbox to understanding the workings of memory, Algorithms to Live By transforms the wisdom of computer science into strategies for human living.

Compare

5out of 5B Schrodinger–This is one of those books that you pick up in the hope that it lives up to its title but is likely not to because it was written by someone from marketing. Every now and then it pays off, and this is one of those times. This book spoke volumes to me. I have studied math, and I love math especially applying it to scientific problems. But I have never looked into algorithms, nor have I been taught algorithms. What a shame! I took to the ideas instantly and it all made complete sense - not only the This is one of those books that you pick up in the hope that it lives up to its title but is likely not to because it was written by someone from marketing. Every now and then it pays off, and this is one of those times. This book spoke volumes to me. I have studied math, and I love math especially applying it to scientific problems. But I have never looked into algorithms, nor have I been taught algorithms. What a shame! I took to the ideas instantly and it all made complete sense - not only the algorithms, but the living by them. I guess it all ties into how our brains work and how Turing likened computers to our brains. It all makes sense because our brains are computers that work by algorithms. Messy algorithms that clash and battle against each other, but predictable in some ways. So embracing how algorithms work and some of the solutions they suggest and applying them to your everyday life may seem like a stretch, but you're already doing it, you just don't realise it. And you may not be solving your problems in the most effective manner, but the authors explore the reasons for that too. So if you view reality like I do, pick this book up. It has more revelations in it than any holy text. It gives me frameworks to work on problems that I already think about. It helped me make even more sense of this crazy place. As soon as I finished the audiobook I started right back at the beginning again. The narrator is one of the authors and he does a brilliant job. I'm going to get a physical copy of this too when it is out in paperback. It's a keeper. It's a treasure. So much bliss!

4out of 5Brian Clegg–I was captivated by much of this book. It's the perfect antidote to the argument you often hear from young maths students - 'What's the point? I'll never use this in real life!' This often comes up with algebra (which often is useful), but reflects the way that we rarely cover the most applicable bits of maths to everyday life at high school. Although this book is subtitled 'the computer science of human decisions', it's really about the maths of human decision making (which is often supported I was captivated by much of this book. It's the perfect antidote to the argument you often hear from young maths students - 'What's the point? I'll never use this in real life!' This often comes up with algebra (which often is useful), but reflects the way that we rarely cover the most applicable bits of maths to everyday life at high school. Although this book is subtitled 'the computer science of human decisions', it's really about the maths of human decision making (which is often supported by computers) - I suspect the 'computer science' label is to make it more sexy than boring old mathematics. If there is any danger that the 'M' word would turn you off, the book tends to skip over the mathematical workings, concentrating on the outcomes and how they're relevant to the kind of decisions we make in everyday life - and it's that application side that makes it particularly interesting (helped by a good, readable style from the co-authors). So, for instance, one of the earliest areas covered is the kind of decision where you are selecting between a number of options that arrive sequentially and where you have to make a decision on which is best for you part way through the sequence, even though there may be better options in the future. The classic examples for this are some kinds of job interviews, house buying and finding a partner for life. It might seem there can be no sensible advice, but mathematically it's very clear. You wait until you've got through 37% of the choices, then pick the next one that's better than any you've seen before. It's not that this will necessarily deliver your best of all possible worlds. More often than not it won't. But it will give you a better result than any other mechanism for deciding when to go for a particular option. Of course it's not always easy to apply. For example, unless it's something like an interview with closed applications, how do you know when you are 37% of the way through the available options? Luckily, the authors point out that there are approximations to get around this, which include that the approach can also apply to the amount of time available for the process. And that's just the start. Along the way you will discover the best way to sort the books on your shelves into alphabetic order (something I confess I did last year, using a sub-optimal mechanism), how to balance exploration (for example, trying out new restaurants) with exploitation (for example, returning to tried and tested restaurants), how the concept of caching can revolutionise your filing system (and make that pile of papers on your desk that everyone mocks the sensible approach), why Bayes theorem is so important and much more. I absolutely revelled in this book. The content only fades a bit when the applications aren't about real world decisions. So, for instance, there's some material about how the internet works that is very interesting if you like that kind of thing (I do), but hasn't got the same feeling of personal utility to it, so lacks some of the bite of the other chapters. This is even more obvious in the section on randomness. I would also have liked to see more acknowledgement that most of the content was really from the area of study called operational (operations in the US) research, a discipline that happens to make use of computers, rather than true computer science - but that's a specialist moan. Realistically speaking, I don't think much of the content of this book will truly change how any of us do things. Interestingly, the authors reveal than an expert in the field pretty much consciously ignored the mathematical approach in a particular case, opting for more of a 'feels right' choice. But that doesn't stop the whole business, whether it's the relative simplicity of the 37% rule or the mind twisting possibilities of game theory, from being both potentially practical and highly enjoyable as presented here. Recommended.

4out of 5David–I enjoy thinking about algorithms as they are applied to technical problems. So, when I saw this book, I thought, "This is a book written just for me." And, that assessment was absolutely correct. It is a fascinating book, all about how sophisticated algorithms are applicable to everyday problems. The book starts out describing the "optimal stopping problem." It is also sometimes called the "secretary hiring problem", and I have seen it applied to dating to find a romantic partner, and this book I enjoy thinking about algorithms as they are applied to technical problems. So, when I saw this book, I thought, "This is a book written just for me." And, that assessment was absolutely correct. It is a fascinating book, all about how sophisticated algorithms are applicable to everyday problems. The book starts out describing the "optimal stopping problem." It is also sometimes called the "secretary hiring problem", and I have seen it applied to dating to find a romantic partner, and this book points out that it can also be applied to looking for an apartment in a seller's market, or searching for a parking space. It can be summed up by the phrase, "Quit while you're ahead." Basically, you have a finite amount of time to complete a search for the "best" item or person. What do you do? It can be shown, mathematically, that you should conduct a search for 37% of your total available time, without making any decisions. Then, at the very next time you find an item or person that is better than all of the previous ones, you should jump on it! I read about this, beforehand, but I didn't realize that 37% comes from 1/e, where "e" is the natural exponent. The next topic in the book is the dichotomy between explore and exploit. That is to say, when you are looking for something to do, will you try something new (explore), or repeat something that has pleased you in the past (exploit). The answer has to do with how much more time you have in this situation. Movie sequels are all about exploiting, because movie revenues are decreasing. If you are new to an area, you will explore restaurants, but if you are moving away soon, you will return to restaurants you have previously visited. I enjoyed how this issue is related to the "multi-armed bandit" problem. This is a mathematical problem that has lots of applications; choosing the best slot machine in a casino, for example, or designing a web site that will maximize profits for a company. Sorting is a big topic in the book. It turns out that top poker players sort themselves out, and don't want to play with players they think are better. Libraries use an inefficient caching system, putting recent acquisitions in front. Instead, they should put the most popular books in front. The Naguchi filing system involves returning all files to the extreme left. This goes against the recommendations of efficiency experts, who recommend sorting by topic. Leaving a pile of papers on top of a desk is an example of the MOST efficient filing system! I enjoyed reading an anecdote about Barack Obama visiting Google, before he became president. At Google, he was treated to a pretend job interview. He was asked, "if you had to design an algorithm to sort a million 32-bit integers, what would you do?" He replied that he would not use a bubble-sort algorithm, and all the people in the audience applauded his correct answer! I enjoyed reading about human memory from an algorithmic point of view. Memory recall is a problem of organization. It was fascinating to read that a graph of the probability of remembering something as a function of elapsed time exactly mimics the probability that a word appears in a newspaper headline twice in a row! Knowing more makes it harder to remember things; what we call memory decline is actually just learning. A brain fart is actually just a cache miss! Related to sorting are various problems of scheduling. Examples from the book include multiple laundry loads to minimize total washing plus drying time, and minimizing the rotting of food from a CSA (Community-Supported Agriculture). No book on everyday applications of algorithms should bypass Bayesian reasoning, and this is an important subject in this book. Our memories of images of plane crashes and car crashes are roughly the same; as a result, we are surprised that there are orders of magnitude more deaths in car crashes, than in plane crashes. The dangers of over-fitting are discussed at length. As an example, police and FBI agents sometimes over-train; they sometimes use good gun-training etiquette during a shoot-out, with fatal consequences. I really appreciated the discussion of how over-fitting is avoided in biological evolution. It is dangerous for organisms to evolve to over-fit an ecological niche, because the species might not be able to rapidly adapt to an uncertain future environment. I also thought that the description of "exponential backoff" was very well treated in the book. This esoteric-sounding algorithm is used in all computer networks, but is also used by many of us in treating flaky friends, and in punishment for probation violations. The last chapter in the book was about game theory. It is helpful, in reading this book, to have some previous background, an understanding of a "Nash equilibrium". The following quote sums it up nicely: Love is like organized crime. It changes the structure of the marriage game so that the equilibrium becomes the outcome that works best for everybody. I highly recommend this book. Regardless of your mathematics background, it will intrigue you and amaze you, to see how math permeates our everyday lives.

4out of 5Amir Tesla–Okay, I loved this book. So what is it about? The big picture We encounter many problems in our daily life, for instance, should I park my car here or proceed with the hope of finding a free spot a bit further? Should I try new restaurants or just stick to good old ones I know? How can I find my life's purpose? What is the fastest way I can sort out my books, hmmm, should I even try sorting out my shelves? How can I best schedule my tasks for maximum productivity and many more routine problems Okay, I loved this book. So what is it about? The big picture We encounter many problems in our daily life, for instance, should I park my car here or proceed with the hope of finding a free spot a bit further? Should I try new restaurants or just stick to good old ones I know? How can I find my life's purpose? What is the fastest way I can sort out my books, hmmm, should I even try sorting out my shelves? How can I best schedule my tasks for maximum productivity and many more routine problems like these. These problems have a mathematical and computer science basis to which the scientific community has found optimum or near to optimum answers and this book teaches us how we can apply these solutions to our daily life problems. Amazing, isn't it? :D The book itself: Well, the idea of the book is just marvelous. In addition, the writers are profoundly knowledgeable and educated both from academic and non-academic perspectives; hence, they've woven perfectly selected anecdotes, philosophical, economical or psychological facts, literary phrases into the fabric of their stories which makes the book superb. This book is not an easy read at all, and it's a good thing in contrast with common belief since it challenges and stretches your mind and expands your thoughts horizons. Part of this difficulty stems from the fact that authors are having a hard time simplifying mathematical and computer science facts. The material sometimes gets a bit tough to comprehend. On the other hand, It seems to me that authors are trying hard to make the text complex. :| Final word This book definitely is amongst the richest books I've ever consumed, lots of knowledge and insights are compiled in an applicable manner. I would whole-hardheartedly recommend this books to all the nerds and geeks out there and everyone who enjoys improving efficiency and productivity of his/her day-to-day life.

5out of 5Rossdavidh–Even though I'm a computer programmer, I have to say when I saw the title I was a bit put off. Algorithms are what I use for telling a computer what to do, but I'm not sure I feel comfortable with using them to tell myself what to do. Real life is less tidy and binary than the data in a computer. But, perhaps out of train-wreck curiousity, I picked it up and took a look. The first thing I noticed is that Alison Gopnik gave it a dust jacket endorsement. Ok, you have my full attention now. Once I Even though I'm a computer programmer, I have to say when I saw the title I was a bit put off. Algorithms are what I use for telling a computer what to do, but I'm not sure I feel comfortable with using them to tell myself what to do. Real life is less tidy and binary than the data in a computer. But, perhaps out of train-wreck curiousity, I picked it up and took a look. The first thing I noticed is that Alison Gopnik gave it a dust jacket endorsement. Ok, you have my full attention now. Once I started reading, I understood a bit better what the authors were getting at. A lot of what ought to be called philosophy, is nowadays most often carefully looked at by computer scientists. Questions like: 1) how do you balance finding new, vs. getting satisfaction from what you already know is good enough? Should I eat at my favourite restaurant, or give a new one a try? Should I move to a new city or stay where I know where the best bookstore/coffeeshop/bar/restaurants are? Should I try out a new career or employer, or stay with the job I've got? 2) how do you balance keeping things orderly, and keeping them handy? 3) how do I balance the risk of missing out on some important news, vs. the problem of spending my life endlessly checking email and texts? 4) how do I balance the risk of not thinking deeply enough about something, vs. the risk of overthinking something that is actually simple? We have spent over half a century looking at these questions in detail, in order to make computer programs work more efficiently when they sort, analyse, or store and retrieve data. Our lives are rarely so tidy and binary as a computer's data, but all of these questions are highly relevant to questions we face in our own messy, analogue lives. This isn't, I think, a reason to decide that you should spend 37% of your expected adult lives dating, and then propose to the next person you date who is better than anyone you've dated so far (as one information theory algorithm might suggest). But, there are a lot of situations in life where we have to choose between deciding how picky to be vs. it's time to make our pick. For example, the amount of time to look for a house, or a parking spot, or a new job, are places where I think it's ok to use a bit of algorithmic logic instead of just going with your gut impulse (which is a lot easier for people to sway with savvy salesmanship). For me, though, more likely than that I will actually use the quicksort algorithm for my socks (see chapter 3) is that I will think more clearly about the issues involved when I do have a large sorting project to do. Just reading about the tradeoffs involved, helps to think more clearly about them. In sorting, what are the chances you are ever going to need to search through the stuff you're sorting anyway? If there's a good chance you won't, just do a rough bucket sort and call it done. In searching, are you needing the best chance of getting the absolute best, or the best chance of getting something above average? If you pass on an opportunity and then go back, what is the chance that opportunity will still be there (in the crowded parking lot, not much; in job search, depends on the labour market). The fun thing about this kind of book, is that it is not about any particular topic per se, it is about all topics and none. It is a book for thinking about thinking, and thinking about better ways to think. It is fun in the same way that solving puzzles or playing games is fun; it's not that the puzzle or game is important in itself, it's that it's fun to feel your brain working effectively on a hard task (which is why the puzzle or game can't be too easy, or it won't be fun). Reading this book is an opportunity to think well about a lot of topics from your everyday life, and who knows, it may make you think slightly better about them after you're done. I probably won't really live by these algorithms, but it is more fun to live with them (i.e. having them available when I feel like it), and this book is a pain-free and enjoyable way to get introduced.

4out of 5Riku Sayuj–A simple algorithm to conceive of literary plots could be to slot them as belonging to one of these categories: Man vs. Nature, Man vs. Self, Man vs. Man & Man vs. Society. Brian & Tom enlists findings from computer science to guide us through these. Algorithms here are the shortcuts or even the intuitions that guide us through problems that are intractable at first glance. We, apparently, use them everyday. Brian & Tom are here to document this and to show how exactly we can make A simple algorithm to conceive of literary plots could be to slot them as belonging to one of these categories: Man vs. Nature, Man vs. Self, Man vs. Man & Man vs. Society. Brian & Tom enlists findings from computer science to guide us through these. Algorithms here are the shortcuts or even the intuitions that guide us through problems that are intractable at first glance. We, apparently, use them everyday. Brian & Tom are here to document this and to show how exactly we can make them more efficient, by exploring the idea of human algorithm design—searching for better solutions to the challenges people encounter every day. The central thesis is that it’s best to use shortcuts to improve your probability of success and remember that “perfection is the enemy of the good.” The book’s algorithms are intended to reduce time spent puzzling, conserve energy for the things that matter. When it comes to the first two categories, computer science is shown to be a good guide to problems created by the fundamental structure of the world, and by our limited capacities for processing information. As with all the sciences before it, computer science and data science are pretty effective in dealing with these issues. And the computational approach seems to be a remarkably useful improvement in dealing with areas like self-control or complex everyday decisions. In this part of the book, when we deal with Man vs. Nature & Man vs. Self, we mostly encounter well-defined problems and potential algorithms to deal with them. We have a nice variety of approaches here: First, we are given a taste of the “Optimal stopping problems” which spring from the irreversibility and irrevocability of time - How do you decide when to stop searching, be it for a the perfect mate, the perfect employee, the perfect job or the perfect weekend movie? The answer seems to be simple: 37% - you stop once 37% of your options have been checked out. Much more useful than it sounds, this number is the output of an algorithm. Whether it’s an apartment, a parking space, or a spouse, the right moment to stop searching and start choosing falls under the umbrella of problems called “optimal stopping.” The general solution to optimal stopping problems reveals that you should spend 37 percent of your time gaining an impression of what’s out there and the rest of the time selecting anything better than the average of what you observed thus far. Need to rent an apartment in three weeks? Simply take one week to observe and two weeks to pounce on the next best thing. This means that you have a good sample of the options you have so you don’t jump to early decision and miss out on the good choices that were just around the corner, and at the same time, you don’t waste all your time only searching! Then we are introduced to “the explore/exploit dilemma”, springing from time’s limited supply - should we revisit favourite restaurants and places and ensure a good time (exploit) or should we explore bravely out to new experiences and places (explore) in the hope that we might stumble on something incredible? If we don’t explore, we might miss out on a lot of YOLO stuff , but if we only explore and do not exploit the good stuff we have already discovered (a favourite dish, a cared-for home, spouse, close friends, etc.) then we might me missing out on even more. SO how do we figure out an optimal ration between Explore/Exploit? Turns out computer scientists have been working on finding this balance for more than fifty years. They even have a name for it: the explore/exploit tradeoff. The explore/exploit tradeoff tells us how to find the balance between trying new things and enjoying our favourites. The answer is to think about the time you have left - the more time you have the more your strategy should shift. So the young should explore more and the elderly should exploit more and wherever you are in that continuum, you should ration the Es accordingly. YOLO, after all. There are more: Relaxation and randomization emerge as vital and necessary strategies for dealing with the ineluctable complexity of challenges like trip planning and vaccinations, Sorting theory tells us how (and whether) to arrange our offices, Caching theory tells us how to fill our closets, Scheduling theory tells us how to fill the unforgiving minute well, etc. Then comes the next two categories: Man vs. Man and Man vs. Society problems - these are, in effect, the problems that we pose and cause each other. Here the authors move away from computer science and enlists mathematics as well, specifically and predictably, game theory, to help us out. And the cross-pollination between game theory and computer science gives us algorithmic game theory for tackling issues like investing, bubble and even plain arguments. The solutions are much less rigorous here, with 1) the advice to “change the game” if the game threatens to go into less than optimal equilibriums and 2) an exhortation to be “computationally kind” to reduce the cognitive load of the participants, emerging as the main “algorithms to live by” when it comes to living in society. So as always, the book would seem to be teaching us again that no matter how computationally adept we are, dealing with each other is something that just can’t be fitted into any algorithm, formula or thumb-rule. We gotta wing it.

5out of 5Bill–I really enjoyed this book. It's a nice popular review of research, in a style similar to Malcolm Gladwell. It was fascinating to see the wide-reaching applications of classic algorithms from computer science and also humbling to see how many problems are essentially impossible to truly optimize. However, as luck would have it, there are often simple approximations that give a pretty good solution with very little effort. The authors do a good job giving interesting backstory on the algorithms I really enjoyed this book. It's a nice popular review of research, in a style similar to Malcolm Gladwell. It was fascinating to see the wide-reaching applications of classic algorithms from computer science and also humbling to see how many problems are essentially impossible to truly optimize. However, as luck would have it, there are often simple approximations that give a pretty good solution with very little effort. The authors do a good job giving interesting backstory on the algorithms and relating them in ways that are hopefully accessible to readers who aren't familiar with computer science. My favorite chapters were the ones that were the most strongly anchored in the mundane, especially "Optimal Stopping" (parking space/househunting), "Explore/Exploit" (should I try a new restaurant or go to my old favorite?) and "Scheduling" (what to do with your to-do list). Some of the others, such as "Networking" and "Overfitting" were more theoretical and less memorable, but still had nice historical vignettes of the people behind famous names like Bayes. If you have a technical/analytical inclination and have ever wondered what the ideal way to solve an everyday problem, I think you'll find a lot to like in this book.

4out of 5Kony–An engaging conceptual tour of computational/networking concepts, how they apply in the computer world, and how we can use them to reframe, streamline, and manage a diverse array of real-life problems, both silly and serious. As a reader who knows little about computer science - but loves learning new frameworks, drawing analogies between disparate fields, and finding metaphors for life everywhere - I thoroughly enjoyed this. Some of my favorite principles/concepts: * 37% rule of "optimal An engaging conceptual tour of computational/networking concepts, how they apply in the computer world, and how we can use them to reframe, streamline, and manage a diverse array of real-life problems, both silly and serious. As a reader who knows little about computer science - but loves learning new frameworks, drawing analogies between disparate fields, and finding metaphors for life everywhere - I thoroughly enjoyed this. Some of my favorite principles/concepts: * 37% rule of "optimal stopping" (when to stop scouting prospects and just commit); * explore/exploit tradeoff (chance of finding a new gem vs. certainty of enjoying a known fave); * LRU ("last recently used") sorting as an efficient prophylactic for searching; * layered caches as metaphor for human memory ("brain fart" as "cache miss"); * overfitting (when interpreting data: prefer simple accuracy to complex precision); * constraint relaxation as a technique to address knotty problems; * buffer-bloat (when backlog is bad, best to reject all incoming requests until it clears); * exponential back-off (when head-butts recur, double your wait time before trying again); * computational kindness (by reducing the options on the table, we do people's brains a favor).

4out of 5Andrew–So many great one-liners in this book. Stop on Tinder at 37%. Use thick markers in brainstorming. All things being equal, it'll last as long as it's lasted. But lest you think this is another fluffy brain book, it's actually hard computer programming with the occasional laugh-out-loud line. The team behind it are serious academics who have thought deeply about how computers think and how we can use those algorithms to make our lives easier. Which, when you think about it, isn't so crazy, because who So many great one-liners in this book. Stop on Tinder at 37%. Use thick markers in brainstorming. All things being equal, it'll last as long as it's lasted. But lest you think this is another fluffy brain book, it's actually hard computer programming with the occasional laugh-out-loud line. The team behind it are serious academics who have thought deeply about how computers think and how we can use those algorithms to make our lives easier. Which, when you think about it, isn't so crazy, because who taught the computers to think in the first place? We're just reclaiming tactics that are ours to begin with.

4out of 5Shayan Kh–یه سری توضیح فارسی بعد از این ریویو ی انگلیسی هست. Wow. I did not expect this book to be this good. Algorithms to live by is aptly named. The authors use computer science problems to tackle everyday problems that every one of us encounters on a daily basis. How should I schedule my day? How should I organize my files? When I found a parking spot, should I park or should I search a bit more? All of these problems have a right answer, and people mostly don't know the answer. This book has been sent یه سری توضیح فارسی بعد از این ریویو ی انگلیسی هست. Wow. I did not expect this book to be this good. Algorithms to live by is aptly named. The authors use computer science problems to tackle everyday problems that every one of us encounters on a daily basis. How should I schedule my day? How should I organize my files? When I found a parking spot, should I park or should I search a bit more? All of these problems have a right answer, and people mostly don't know the answer. This book has been sent from mathematical heaven to show us the correct way of tackling these kinds of problem. So it is a must read for everyone. If you are a computer scientist, this book would be a beautiful bridge that connects your beliefs to your life. And if you don't even know what the hell computer science is, well as long as you are alive, this book can help you. خیلی خیلی کتاب خوبی بود. من معمولا این ریویو ها رو برای خودم می نویسم. برای همینه که همیشه انگلیسی می نویسم. به عنوان تمرین زبان. اما این کتاب اونقدر خوب بود که به نظرم باید معرفی شه به همه. برای همین خواستم به فارسی هم یه چیزی راجع بهش بگم که به همه معرفی شه. این کتاب از بهترین کتاب های "کمک به خود" هست که تا الان خوندم. حتما دیدین، کتاب هایی که خیلی هم زیادن و همیشه بخش های خیلی زیادی از کتاب فروشی ها رو شامل می شن. مثل روش های متفاوتی که برای مقابله با تنبلی هست و روش های مدیریت زمان و از این چرندیات. اکثر این کتابا، یه ویژگی مشترکشون اینه که دلبخواهی نوشته شدن. بر اساس سلیقه ی نویسنده. اما یه سری از این کتابا هستن که بر اساس تحقیقات علمی نوشته می شن. اینا برای خودشون یه سطح دیگه ای دارن. توی همین سطح، بهترین کتابی که خوندم تا الان این کتاب بوده، که بعضی جاهاش از تحقیقات علمی استفاده کرده و بعضی جاهاش از نتایج علوم پایه! در حقیقت علوم کامپیوتر. خیلی از مشکلاتی که ما روزانه باهاش دست و پنجه نرم می کنیم، مشکلاتی هستن که قبلا مدل سازی هاش انجام شده و راه حل های بهینه اش پیدا شده. یا اصن ثابت شده که راه حلی که توی زمان مناسب به جواب برسیم وجود نداره. این کتاب یه تعدادی از این مشکلات رو لیست کرده و جوابشون رو هم داده. مشکلاتی مثل این که وقتی یه جای پارک پیدا می کنید، بهتره همونجا پارک کنید یا بهتره بازم بگردین. یا این که زمانبندی رو چه شکلی بهتره انجام بدیم. این مساله ها رو قبلا آدمای خیلی باهوش تر از من و شما بهش فکر کردن. توی این زمینه بد نیست ببینیم به چه نتیجه ای رسیدن. برای همین، خوندن این کتاب رو به همه پیشنهاد می کنم.

5out of 5Farhana–It was quite interesting, intriguing ! Once I had an argument with somebody who believed in using "steepest ascent hill climbing approach" while decision making. I personally don't favor hill climbing algorithm. I think the following two lines matter: neighbor <---a highest valued successor of the current. if value(neighbor)> value(current) then replace current with neighbor. Now, whether people would execute these two lines or not depends on many things. Sometimes they may, sometimes they It was quite interesting, intriguing ! Once I had an argument with somebody who believed in using "steepest ascent hill climbing approach" while decision making. I personally don't favor hill climbing algorithm. I think the following two lines matter: neighbor <---a highest valued successor of the current. if value(neighbor)> value(current) then replace current with neighbor. Now, whether people would execute these two lines or not depends on many things. Sometimes they may, sometimes they may comment out them. Next, what heuristic functions they use while evaluating options ! Obviously the heuristic differs from people to people - reflecting their stands, morality, values & judgements. And why would people feel the need of replacement in the first place! I rarely like the idea of replacements because "Bests are not gonna remain best always." As for the hill climbing, it balances by hooking on the local maxima & depriving of the global maxima! Maybe that's the price one needs to pay for his/her covetousness! :p (for the time being thinking philosophically not computationally :p ) So, why every time replace whatever you have! However, it's people's personal choice. The writers of the book drew analogy from computer science algorithms into daily lives. Being a computer science student I think any CS student is gonna enjoy it! Many topics, concepts that we've learnt through different courses have been put here in a different light. It offers a different frame to look back at those concepts, review them & creates an understanding & thoughtfulness to stretch their usefulness! :)

4out of 5Deke–Definitely valuable material here, but I can't fully recommend it... although I'm having trouble discerning why. Fact is, I read a lot of books of this ilk, and this one didn't strike the right balance between the hard math and the chatty anecdotal moments, as Freakonomics did. Moreover the real life application of these principles are in many cases strikes me as being about as real-world-useful as textbook economic models, with their perfectly logical actors, etc. Good food for thought, Definitely valuable material here, but I can't fully recommend it... although I'm having trouble discerning why. Fact is, I read a lot of books of this ilk, and this one didn't strike the right balance between the hard math and the chatty anecdotal moments, as Freakonomics did. Moreover the real life application of these principles are in many cases strikes me as being about as real-world-useful as textbook economic models, with their perfectly logical actors, etc. Good food for thought, nonetheless.

4out of 5Andy–Oy. This type of thinking is part of what is wrong with the world and gives nerds a bad reputation. These algorithms are very theoretical. It's impossible to apply them without making all kinds of assumptions that don't seem generally valid in the real world. And the proponents don't test them to see if they work. For example, they've got one on how to find a parking spot. They ask the guy who came up with it how it works for him. He answers "Oh me, I ride a bike." [rimshot] Also, the narrator Oy. This type of thinking is part of what is wrong with the world and gives nerds a bad reputation. These algorithms are very theoretical. It's impossible to apply them without making all kinds of assumptions that don't seem generally valid in the real world. And the proponents don't test them to see if they work. For example, they've got one on how to find a parking spot. They ask the guy who came up with it how it works for him. He answers "Oh me, I ride a bike." [rimshot] Also, the narrator talks very slowly, even on 2x playback speed.

5out of 5Emily–One of the authors of this also produced The Most Human Human, a very good book about artificial intelligence that I probably didn't laud in enough detail in my review (although, to be fair, I read it on a Turkish beach and reviewed it well afterward). This book is an even more ambitious attempt to bring computer science concepts to a lay audience, and I thought it was excellent. Presenting common algorithms as a way of making decisions in ordinary human affairs seems a lot like the One of the authors of this also produced The Most Human Human, a very good book about artificial intelligence that I probably didn't laud in enough detail in my review (although, to be fair, I read it on a Turkish beach and reviewed it well afterward). This book is an even more ambitious attempt to bring computer science concepts to a lay audience, and I thought it was excellent. Presenting common algorithms as a way of making decisions in ordinary human affairs seems a lot like the computer-science version of Everything I Ever Needed to Know about Economics I Learned from Online Dating and indeed, the first chapter is a bit like that. It discusses dating and marriage as an optimal stopping problem, which is a little silly. But unlike the "economics" book, this one swiftly leaves that kind of gimmick behind and talks about much more serious problems, like housing bubbles and transportation and how to assign subjects in medical studies when some will get the inefficacious treatment and die. I routinely criticize books for scope problems, so I have to be consistent here and point out that the authors sometimes stray from discussing immediate real-life applications of computer algorithms, and find themselves just discussing computer science. It's a chatty narrative, but you're reading about Bayesian priors and packet switching. However, this book's scope drift strikes me as a virtue because the writing is very lucid and they explain a large proportion of the types of algorithms you'd learn in a computer science class--a reader who doesn't know computer science would learn a lot without even noticing! In fact, my one complaint would be that this book comes so close to directly explaining the P vs. NP problem and leaving general readers with a significant understanding of something important to the academic field--but then they don't. They give you everything you need to understand it, but they never put it in those terms. It's a bit like seeing an ice-skater gearing up for a quadruple jump, and then they chicken out and just do that little half-turn and hop. Why didn't they go for it? Still, the people who notice that particular lack of reach aren't the primary audience for this work. If you are interested in what computer science is about (hint: not computer repair), this is--perhaps inadvertently--a great starting point. And if you do know the algorithms already, it's an entertaining review and discussion of everyday problems.

5out of 5Arunothia Marappan–In this book the authors explain famous algorithms in real world context. My notes from this book - (1) Optimal Stopping (2) Old people don't lose memory - they have so much of it that it slows their system. (3) Procrastination can be seen as an efficient scheduling problem with wrong priority. (4) Predictive Models - Gaussian, Power Law, Erlang (5) Over-fitting - "It really is true that a company will build whatever the CEO decides to measure". (6) Penalize complexity - Occam's Razor Principle (7) "A In this book the authors explain famous algorithms in real world context. My notes from this book - (1) Optimal Stopping (2) Old people don't lose memory - they have so much of it that it slows their system. (3) Procrastination can be seen as an efficient scheduling problem with wrong priority. (4) Predictive Models - Gaussian, Power Law, Erlang (5) Over-fitting - "It really is true that a company will build whatever the CEO decides to measure". (6) Penalize complexity - Occam's Razor Principle (7) "A bit of conservative, a certain bias in favor of history, can buffer us against the boom and bust cycle of fads" (8)Over-fitting Examples - Military Training, taste buds (9) Early Stopping - Appropriate for Uncertainty (10) "The prefect is the enemy of the good." (11) Continuous Relaxation for discrete optimization. (12) Lagrangian Relaxation - "You don't HAVE to obey the law. There are consequences to everything and you get to decide whether you want to face those. (13) Random Sampling - Miller Rabin Primality Test (14) Charity - GiveDirectly uses random samples of review (15) Bloom filters for search engine crawls. (16) Simulated Annealing - Random restart hill climbing. (17) Randomness - heart of creativity? (18) Networking - Circuit Switching -> Packet Switching (19) Exponential backoff (20) AIMD - Additive Increase Multiplicative Decrease, TCP's Sawtooth (21) Game Theory - Price of Anarchy. Selfish routing only has 4/3 as it's price of Anarchy that's how internet is working fine (infact 33% close to optimal). (22) Price of Anarchy is very high in case of Prisoner's Dilemma. (23) Tragedy of Commons - Pollution, Climate Change, Number of Vacations employees use etc., (24) Game Theory - Information Cascade. (25) Vickrey Auction I recommend this book to all!

4out of 5Huyen Chip–I read this book per my professor's recommendation and I wasn't disappointed. Throughout the book, there are many moments that made me go: "Wow, that explains a lot!" I'm familiar with most the algorithms mentioned in the book, but I didn't see their application in real life until now.

5out of 5Peter (Pete) Mcloughlin–Thorny real-world problems often do not have a clear solution. We face a messy world with ill-defined problems such as trade-offs between things like whether to explore something new or exploit a tried and true method. There are also problems that are ill-defined or hard to formulate or maybe a problem has such a large search space that finding the one best solution is impossible. Computer scientists have had to take beautiful computation and mathematics and apply it to real-world problems which Thorny real-world problems often do not have a clear solution. We face a messy world with ill-defined problems such as trade-offs between things like whether to explore something new or exploit a tried and true method. There are also problems that are ill-defined or hard to formulate or maybe a problem has such a large search space that finding the one best solution is impossible. Computer scientists have had to take beautiful computation and mathematics and apply it to real-world problems which don't lend themselves to cut and dried textbook solutions. Algorithms developed in the field of computer science often mirror the real world algorithms and rule of thumbs people use to navigate their busy lives. Things like knowing when to stop a search and settle or how to schedule multiple conflicting goals in our day to day lives or ordering priorities or exploring networks in our social world. Algorithms developed by geeks can come in handy in ordinary life. Well presented and interesting material with some things even a technophobe can use. Update. 9/7/2019 Some of these tools used by computer scientists are developed to solve problems of curve-fitting, scheduling, sampling, prediction, ordering, explore or exploit, are dilemmas of limited time or resources and the need for shortcuts to solve problems that are good enough. Getting the perfect answer is often impossible then one has to find methods to get as good an answer as feasible. So messy shortcuts are needed and these algorithms developed in computer science have their analogs in our real world where the good must not be made the enemy of the perfect. This book shows some of the tricks of computer science look an awful lot like all too human hard-earned wisdom of limited creatures such as ourselves.

5out of 5Todd N–This is the first book Ive read that was recommended to me by a Goodreads friend I havent met irl. (Thanks, Darian!) Very interesting and readable book that goes through algorithms that are common in computer science and tech fields, gives a bit of history about them, and then shows ways that they could be applied to every day scenarios. Since Ive worked in tech on products up and down the OSI stack, I was familiar with a lot of them though I certainly hadnt sat down in a systematic way and This is the first book I’ve read that was recommended to me by a Goodreads friend I haven’t met irl. (Thanks, Darian!) Very interesting and readable book that goes through algorithms that are common in computer science and tech fields, gives a bit of history about them, and then shows ways that they could be applied to every day scenarios. Since I’ve worked in tech on products up and down the OSI stack, I was familiar with a lot of them though I certainly hadn’t sat down in a systematic way and thought, “Hmm how can I use these to optimize my life?” That’s okay though because algorithms are interesting enough to read about on their own. The application to every day life is a bonus. I feel like we’d be better off as a species if some of these concepts (O-notation, Bayes theorem, game theory to name a few off the top of my head) were more widely understood and added to common vocabulary. Some of the things that were new to me were the Secretary problem/stopping problem, explore/exploit trade off, some of the queuing theory. I really liked Laplace’s simple yet handy equation for estimating the odds of something given a few events. I was happy to see the formula for estimating pi from dropping needles on lined paper get a mention because that came up in the book I read last year about Claude Shannon. I don’t think people are going to be using this method for estimating pi, but it’s funny that when Prof. Shannon’s daughter dropped a box of toothpicks that’s the first thing he thought to mention to her. I thought that the chapter on game theory was really good, so skip directly to that if you want. [[[I also recommend reading Prisoners Dilemma by William Poundstone, which is a similar book to this one but focused entirely on game theory.]]] I never really thought of morality/religion as a way to limit the range of options so that human interaction doesn’t devolve into game theory hell. It’s a nice theory anyway. I really liked the tons of notes and citations in the back of the book, which took up 1/4th to 1/3rd of it. So there were plenty of links or sidebars with more details. However, at times the writing got to be a bit much. One author is a cognitive scientist and the other is a journalist, so I’m guessing the latter is the one who kept reaching for his thesaurus and Bartlett’s. And I’m also guessing he’s the one putting in all the hook anecdotes, hook quotes, and writing sections in “Christmas tree” and “pyramid” shapes that he learned in J-school. I don’t think I was supposed to notice that stuff. Highly recommended, especially for the non-technical. It could possibly change the way you look at the world, the way that Prisoners Dilemma did for me. (By the way, Amazon says that this book is frequently bought with Hillbilly Elegy. Something odd is afoot in Ohio.)

4out of 5Ali–A really excellent book

5out of 5Tam–3.5/5. I'm totally hooked and decided to buy the print version because it is actually that helpful. It could almost rival Thinking, Fast and Slow in terms of how much of (relative) new yet relevant things it taught me. However, the writing is not as neat and the authors try a bit too hard to sell to book to general audience, stretching the implications/applicability of some algorithms. They are not the original researchers, i.e. they didn't actually solve these mathematical/computational 3.5/5. I'm totally hooked and decided to buy the print version because it is actually that helpful. It could almost rival Thinking, Fast and Slow in terms of how much of (relative) new yet relevant things it taught me. However, the writing is not as neat and the authors try a bit too hard to sell to book to general audience, stretching the implications/applicability of some algorithms. They are not the original researchers, i.e. they didn't actually solve these mathematical/computational problems nor conducted experiences, which is not bad but that explains the limit of how much they can explain these works, compared to Kahneman's (I'm comparing them to a giant, maybe unfair here). Again due to this, much of the mathematical explanations are deferred to the appendix, which I dislike given that I'm reading an e-book, but even if I have a paper copy I would prefer the (simplified) math be done in main text. Instead, they do too much of summarizing and intuition. It would work for some, but just not for me, personally. Still, highly recommend.

4out of 5Amirography–It was a delightful book for all nerds, STEMians and utilitarians, who would love to analyse every single action by the probable result of doing it. This book uses some major algorithms that has been used in computer science and mathematics, and showed their implications for daily decisions. I enjoyed this book, though I would've loved it, if it had more of a structure, and maybe even exercises, for eager audience.

5out of 5Willian Molinari–This is that kind of book that does not answer questions, it just creates a lot more. :) I tend to not implement algorithms just for the sake of learning a new one and this is not a good thing. When you read these kinds of books you understand why it's so important to know which kinds of algorithms already exists and which problems they solve. Real hackers (Read Hackers: Heroes of the Computer Revolution) implement their own code just for the sake of learning something new or for the joy of This is that kind of book that does not answer questions, it just creates a lot more. :) I tend to not implement algorithms just for the sake of learning a new one and this is not a good thing. When you read these kinds of books you understand why it's so important to know which kinds of algorithms already exists and which problems they solve. Real hackers (Read Hackers: Heroes of the Computer Revolution) implement their own code just for the sake of learning something new or for the joy of programming. When you really need to deal with a complex problem, the tools will be already in your mind, just compose and create. This book helps understanding some interesting algorithms that we use (or should be using) in real life. You will understand the basics about them. In case you're a programmer, it will probably generate a list of new topics to study. :)

4out of 5Andrus–I really liked this book. (Im not technical or educated in mathematics, and if you are, then the following may not apply to you at all.) This book did a great job explaining technical concepts like sorting or caching, and showing how these are applied in complex algorithms or in everyday life. Writing and storytelling wasnt perhaps quite as gladwellesque as it could have been, but the content was very illuminating. I really liked this book. (I’m not technical or educated in mathematics, and if you are, then the following may not apply to you at all.) This book did a great job explaining technical concepts like sorting or caching, and showing how these are applied in complex algorithms — or in everyday life. Writing and storytelling wasn’t perhaps quite as gladwellesque as it could have been, but the content was very illuminating.

5out of 5Kathryn Bashaar–This book was entertaining to me because I minored in Math & Computer Science in college and have made most of my career in information mangement. The premise is that computers are so fast and so smart now that they can solve problems that stymied mathematicians for centuries, and can even shed light on more everyday human problems. Such as, how long many people should I interview before making a hiring decision? Or, should I finish my small tasks first or tackle the big ones? The main This book was entertaining to me because I minored in Math & Computer Science in college and have made most of my career in information mangement. The premise is that computers are so fast and so smart now that they can solve problems that stymied mathematicians for centuries, and can even shed light on more everyday human problems. Such as, how long many people should I interview before making a hiring decision? Or, should I finish my small tasks first or tackle the big ones? The main conclusion that I took from this book was that human beings, using what we often call common sense, on average will come pretty close to optimal on such decisions. As Shakespeare said, "What a piece of work is man!" Some of the math got a little overwhelming for me. The book could have been a little shorter. But I loved the enthusiasm these guys have for their subject, and the pace and language were sprightly enough that I never lost interest. Like my reviews? Check out my blog at http://www.kathrynbashaar.com/blog/ Author of The Saint's Mistres: http://www.synergebooks.com/ebook_sai...

4out of 5Alex–TL;DR I'd highly recommend this book to anyone who starts (or continues) to study computer science. It provides an important connection or grounding, between somewhat dry science and real life and shows how our everyday actions and decisions are described or affected by core CS algorithms. I listened to it as an audiobook and I'd say that's the only book with the word "algorithm" in its title so far, that is perfectly suitable for the audiobook format. It doesn't have formulas or source code. It TL;DR I'd highly recommend this book to anyone who starts (or continues) to study computer science. It provides an important connection or grounding, between somewhat dry science and real life and shows how our everyday actions and decisions are described or affected by core CS algorithms. I listened to it as an audiobook and I'd say that's the only book with the word "algorithm" in its title so far, that is perfectly suitable for the audiobook format. It doesn't have formulas or source code. It just talks about algorithms in Plain English, explains their history and their practical applications. However, it doesn't limits itself to just a few basic algorithms that you expect in any book (like merge sort or traveling salesman) - it talks about "multiarm bandits", "Bloom filters" and many other "advanced" topics. However, I can almost guarantee that if you like the audio version, you will consider buying an ebook or hard copy, so you can re-read it more thorough and make notes. It's that good and I'm definitely going to do it.

4out of 5Nam–This book takes the most basic algorithms in stats and computer science and combines them with the obvious examples of their usage while successfully presenting nothing useful. For those who are interested in maths, there is only some intuitive descriptions of the algorithms without any concrete proof, and most CS or stats students learn them in depth in their first year anyway. The part about "to live by" is where the authors use their power of hindsight to discuss the obvious. The whole book This book takes the most basic algorithms in stats and computer science and combines them with the obvious examples of their usage while successfully presenting nothing useful. For those who are interested in maths, there is only some intuitive descriptions of the algorithms without any concrete proof, and most CS or stats students learn them in depth in their first year anyway. The part about "to live by" is where the authors use their power of hindsight to discuss the obvious. The whole book can be condensed to less than 20 pages and still preserves the same amount of information. The only good thing I got from this book is that now I know audible.com refunds even finished books.

5out of 5Elena–Useful and curiosity pleasing at the same time. I will remember to use in my office and personal life the exponential backoff algorithm for sure. I will also use technique of relaxing difficult problems (the method is used as a modeling strategy in mathematical optimization). This one is cute too: some problems are so complex, they are simply intractable (i. e. no algorithms that can solve them elegantly exist and the only solution -- brute-force search). One more sweet notion: computational Useful and curiosity pleasing at the same time. I will remember to use in my office and personal life the exponential backoff algorithm for sure. I will also use technique of relaxing difficult problems (the method is used as a modeling strategy in mathematical optimization). This one is cute too: some problems are so complex, they are simply intractable (i. e. no algorithms that can solve them elegantly exist and the only solution -- brute-force search). One more sweet notion: computational kindness (cognitive subsidy). Such an attractive read.

5out of 5Vivian Zhang–I wholeheartedly think every person in computer science can find value in reading this book, whether that be in better informing how to live life optimally, or by applying human tendencies to computer science challenges.

4out of 5Ajeet Mishra–The beauty of this book is that it will keep you engaged. Brian has done really well to present some of the staple algorithms used in computer science. Griffiths uses various facets of algorithmic problem-solving like sorting, caching, and optimal stopping to convince the reader that step-by-step methods that seem very mechanical in nature are actually extremely useful (or at least good enough) for making decisions amid uncertainty. This is a really great dive into intelligent decision-making, The beauty of this book is that it will keep you engaged. Brian has done really well to present some of the staple algorithms used in computer science. Griffiths uses various facets of algorithmic problem-solving like sorting, caching, and optimal stopping to convince the reader that step-by-step methods that seem very mechanical in nature are actually extremely useful (or at least “good enough”) for making decisions amid uncertainty. This is a really great dive into intelligent decision-making, and it gives plenty of actionable advice for attacking all sorts of real-life problems. And while the writing isn’t anything special (would you expect much different from a computer scientist) and the narratives slightly dry, the usefulness and uniqueness of the book certainly win out in the end.

5out of 5Jeremy S–3.5 out of 5. I feel like this book was a bit misleading, but still offered quite a bit of interesting knowledge. In the first few chapters, there were fantastic parallels to real-life problems that are synchronized with computer and mathematical problems. Beyond these first few chapters, however, I felt like the majority of the book was spent telling us about the computational problems, without doing as good of a job as referencing back to everyday life as was done previously. Because of this, 3.5 out of 5. I feel like this book was a bit misleading, but still offered quite a bit of interesting knowledge. In the first few chapters, there were fantastic parallels to real-life problems that are synchronized with computer and mathematical problems. Beyond these first few chapters, however, I felt like the majority of the book was spent telling us about the computational problems, without doing as good of a job as referencing back to everyday life as was done previously. Because of this, the latter half of the book (before the conclusion) spends most of its time talking about computational problems, formulas, and the history of where certain issues and solutions came from. The distancing from real-life applications made it feel more like a textbook for would-be computer science majors than a glimpse into how we are just another algorithmic machine. As I said, it was a very good read, but it didn't do what it advertised quite as well as I wished it would.