Christian, Brian and Tom Griffiths. 2016. Algorithms to Live By: The Computer Science of Human Decisions. Holt.
This book summarizes, in prose aimed at the intelligent lay reader, important themes in computer science, such as sorting, caching (keeping select bits of information close at hand, pun intended), and scheduling.
Back in the early 1980s (!), one of my computer science professors claimed to us in class that the knowledge embodied in our degrees had a "half life" of five years, a figure which would imply that only about 1.5 percent of my computer science degree remains with me in 2024. The strong feeling of familiarity I felt when reading this book convinced me that whatever the quality of the five year half-life approximation in the early years following degree receipt, the decay eventually slows or even stops when only the key themes of the discipline remain.
The rather imperialist conception of the substantive domain of computer science embodied in the book's chapters complicates the decay calculation, particularly for me. For example, the book contains chapters on optimal stopping, on search, and on game theory, which I think of as mainly economics topics rather than computer science topics, and on Bayes Rule, which I think of as a statistics topic. The authors do cite economists and statisticians when relevant, so perhaps rather than complain about imperialism (surely economists live in a thin glass house on this point) one can celebrate the cross-disciplinary breadth of the underlying problems and their still-in-progress solutions.
The text makes some nods toward the "to live by" part of the title (in the way an author of an economics book for a general audience might explain the value of thinking about sunk costs in daily life) but that's not the main point of the book. Instead, it seeks to illuminate some of the key themes in computer science, in clear, enjoyable prose decorated with stories of various researchers who made contributions along the way.
Overall, I found this a most enjoyable read that led to a bout of nostalgia for my undergraduate computer science adventure. And now I know why simulated annealing bears its otherwise inexplicable name and feel better about all the stacks on my office desk.
If you think you might like such a book, you will almost certainly like this particular one.
Hat tip: Dan and Susan