Book · 1986
Programming Pearls
by Jon Bentley
Jon Bentley's 1986 column collection teaches you to shrink a 75,000-word dictionary into a Bloom filter and estimate anything — one problem at a time.
What does Reddit think of Programming Pearls?
Thirteen mentions across seven subreddits over seven years: not a volume story, but a persistent one. r/webdev recommends it specifically for FizzBuzz-like interview prep, which is a narrower pitch than the book deserves but not wrong. r/programming cites the Bloom filter passage from 1978 as a concrete example of memory-constrained design thinking, the kind of historical grounding you don't get from LeetCode tutorials. r/ExperiencedDevs and r/devops drop it into curated canon lists alongside Stevens and Hamming, not as the centrepiece but as a steady presence. That's fine. Bentley's column format means most readers take one chapter and go apply it.
Community feedback & reader fit
Themes
- · Algorithm design through problem decomposition
- · Back-of-envelope estimation as an engineering discipline
- · Memory and performance constraints as creative constraints
- · Interview preparation and problem-framing skills
- · Historical case studies in systems design
Common praise
- + The estimation chapter (chapter 7) gives you a repeatable method that r/cscareerquestions commenters cite by name when answering "how do I get better at these questions".
- + The Bloom filter case study shows a real 1978 production problem solved under memory constraints — r/programming pulled it out as an example of design thinking worth studying.
- + Facebook Production Engineering included it on their 2014 new-hire reading list alongside Stevens's UNIX Environment, which says something about the company it keeps.
- + r/webdev recommends it to developers who want to reason through FizzBuzz-style problems rather than memorize solutions.
Common criticism
- − Thirteen mentions in seven years is thin — the book doesn't generate debate or revisit threads the way SICP or DDIA do.
- − It appears almost exclusively in list form rather than as the subject of a thread, which suggests readers respect it without returning to it.
Who it's for
If you're preparing for software engineering interviews and want to build problem-framing instincts rather than pattern-match LeetCode solutions, this is the book r/webdev and r/cscareerquestions actually recommend for that purpose. Experienced engineers who already own Stevens and Knuth will find it fits naturally on the same shelf — r/devops and r/ExperiencedDevs treat it as part of a specific canon, not a standalone discovery. Skip it if you need modern distributed-systems coverage; r/programming references it for historical context, not current practice.
Mentions over time
Top subreddits
Which Reddit comments matter for Programming Pearls?
Top-upvoted quotes across the subreddits where this book is mentioned. Click through to read the full thread.
“Here's the list, for anyone interested in just that: 1. The Pragmatic Programmer by David Thomas & Andrew Hunt (67% recommended) 2. Clean Code by Robert C. Martin (66% recommended) 3. Code Complete by Steve McConnell (42% recommended) 4. Refactoring by Martin Fowler (35% recommended) 5. Hea…
“Here's my list of the classics: **General Computing** * But How Do It Know? - The Basic Principles of Computers for Everyone * The Elements of Computing Systems: Building a Modern Computer from First Principles * […
“Check out the book Programming Pearls by Jon Bentley. It will get you thinking in the right mind frame to take on FizzBuzz-like problems without resorting to memorizing specific interview questions.
“These are the ones that Facebook Production Engineering gave me in 2014 after I accepted. There isn't that much of a difference in terms of interviews. W. Richard Stevens - Advanced Programming in the UNIX Environment Mike Gancarz - Linux and the Unix Philosophy Eric S. Raymond - Art of UN…
“**Books from thread:** - _A Pattern Language_ by Christopher Alexander - _AntiPatterns_ - _The Art of Doing Science and Engineering_ by Richard Hamming - _The Career Programmer: Guerilla Tactics for an Imperfect World_ - [_Code Complete_ (2nd Ed)](https…
“There is an entire section on estimation skills in Programming Pearls. It's chapter 7. It starts out with: > It was in the middle of a fascinating conversation on software engineering that Bob Martin asked me, "How much wa…
“John Bentley in is book "Programming Pearls" describes an early spell check program (1978) that used a Bloom filter. Memory was tight so there was no way to keep the 75,000 word dictionary in memory but they could fit the Bloom filter. The runtime for checking a 4,000 word document went from 6 minut…
“> There was a time where leetcode was never asked Jesus Christ, I keep seeing this silly meme throughout this sub and this is absolutely not true. I've been around in this industry for awhile and I can say for a fact that coding challenges have been around for a long time. Microsoft started the w…
Convinced? Pick up Programming Pearls
Readers also mention
Books that share discussion threads with Programming Pearls — counted from the comments, not curated.
Peopleware
Tom DeMarco
A 1987 management book that correctly predicted open-plan offices would destroy developer productivity — and is still being cited to prove it.
Code Complete
Steve McConnell
Steve McConnell's 900-page construction manual for software, ranked third on Reddit's canonical reading list and still cited 25 years after publication.
Cracking the Coding Interview
Gayle Laakmann McDowell
The book that turned software hiring into a sport — written by the ex-Googler who introduced programming challenges to the process in the first place.
The Mythical Man-Month
Frederick P. Brooks Jr.
Fred Brooks spent the 1960s building IBM's OS/360 and wrote down everything that went wrong — in 1975, and it still lands.
The Pragmatic Programmer
Andy Hunt
Two veterans hand you a checklist for the craft: don't write code you don't need, own your tools, and fix the broken window before someone else does.
Programming Pearls — frequently asked
Is Programming Pearls still relevant for interview prep in 2026?+
Yes, for a specific slice of prep. r/webdev recommends it directly for FizzBuzz-style reasoning and r/cscareerquestions cites chapter 7's estimation framework by chapter number. It won't replace LeetCode practice but it teaches the problem-framing layer underneath the problems. One r/cscareerquestions commenter (↑13) pushes back on the idea that algorithmic interviews are new — Bentley's material has been relevant since Microsoft started asking these questions.
What does Reddit actually say about Programming Pearls?+
Mostly it shows up in lists. Thirteen mentions across r/cscareerquestions (4), r/devops (2), r/programming (2), r/ExperiencedDevs (2), and three other subs. No thread has made it the subject of real argument. The r/programming quote about the 1978 Bloom filter implementation (↑17) is the most substantive engagement — someone used it to illustrate memory-constrained design thinking, not to recommend the book generally.
How does Programming Pearls compare to Code Complete and The Pragmatic Programmer on Reddit?+
It doesn't compete. The r/programming list (↑655) that ranks programming books by recommendation frequency puts The Pragmatic Programmer at 67% and Clean Code at 66% — Programming Pearls doesn't appear in that ranking at all. Its 13 Reddit mentions sit well below those books' volumes. It occupies a different niche: estimation, algorithm intuition, and historical case studies rather than software craftsmanship or professional practice.
Should I read Programming Pearls if I already own SICP?+
They don't overlap much. SICP is about computation as a discipline; Programming Pearls is about specific engineering problems solved under constraints. The Facebook Production Engineering reading list (r/devops, ↑38) pairs it with Stevens and Gancarz, not with structure-and-interpretation books. Read SICP for theory and Bentley for the chapter you need when you're staring at a performance or estimation problem.