HACKER Q&A
📣 curious16

Which books do you consider real gems in your field of work/study?


Well written books can serve as eye openers and warp your understanding of a topic when read at the correct time in your life.

Can you name a few books of that type that really were of such high value in your field of work or study?


  👤 kristiandupont Accepted Answer ✓
I am going to repeat what I always say when these book threads come up:

I love all the recommendations here but please say a word or two about why you recommend said books. Sell them to me, don't make me do the work. Dumb lists of titles are so uninteresting.


👤 da4id
How to measure anything. I think it's targeted for actuaries/insurance, though I'm not in that field. But it did change my idea of what can be analyzed and measured. The beginning is repetitive. Some of it is very unorthodox. But it was very useful in detailing how to evaluate risk.

How to talk to little kids so little kids will listen. I don't have kids and read it on a whim. I've found it's excellent for communicating with people in general during conflict (especially patients). The author is a counsellor and describes real counselling sessions with parents who want better relationships with their children. I enjoyed how the author uses the same techniques on the adults and obtains the same manner of response as when used on the kids.

Understanding Complexity is not a book but a part of the Great Courses. It's hard to say what it directly changed but it did affect how I view everyday life, from traffic to physiology.

Hui's Approach to Internal Medicine was very helpful for transitioning from knowing about medical facts to practical medical knowledge useful to everyday care. It's focus is on 'approach' rather than facts. It has a practical approach to medical issues. First distinguishing by ones in the same category of pathophysiology then practical approach to distinguishing issues within the category. It's a dense book but an excellent read and a good reference.


👤 mikehollinger
Engineer turned engineering leader here.

"Good Strategy / Bad Strategy" by Richard Rumelt - An awesome book on strategy, which explains very plainly how to construct a reasonable strategy, and see signs of bad strategy. It (among other things) dissects NVIDIA's rise in the late 2000's, and predicts (more or less) the next ten years of where the company went.

"The Effective Manager" by Mark Horstman - All the things that no one says or tells about management and communication.

"Team Topologies" by Skelton and Pais - A really good view of organizational design patterns and anti-patterns for software teams rooted in the premise of Conway's Law.


👤 docdocgoose
Principles of Neural Science by Kandel et al

Molecular Biology of The Cell by Alberts et al

Janeway’s Immunobiology

Robbin’s Pathologic Basis of Disease

All of these books are extraordinary in their sheer ability to organize thousands of small details into thematic narratives of how life operates.

They also reveal how hard we humans try to narrate life into tidy, comprehensible themes.

These books are all of an era (2005-2015), and there are probably newer ones. That said, they are a great guide for non biologists into how experts think things work.


👤 progbits
Concrete Mathematics [1], by Graham, Knuth and Patashnik. Wonderfully written (worth buying for the margin jokes alone) and approachable, but dense with information. Great overview of discrete math and algorithm analysis.

generatingfunctionology [2] by Wilf is an excellent companion book to Concrete Mathematics, going deeper into generating functions.

[1] https://en.wikipedia.org/wiki/Concrete_Mathematics

[2] https://www2.math.upenn.edu/~wilf/DownldGF.html


👤 kilotaras
Designing Data Intensive Applications is one of the most useful books if you work with big systems.

Doubly so if you're actually working on a system like that.

Nicely threads a line between too dense and too watery.


👤 ellen364
Few of these books are “great works” in their field, but all changed my understanding of their topic.

- How to Read a Book by Adler and Van Doren. I was in academia when I read this and it had a huge impact on how I read and thought about academic papers.

- Intuitive Biostatistics by Motulsky. First stats book that I enjoyed. Emphasises the practice of statistics, particularly the assumptions and mistakes people tend to make.

- World War II Map by Map, published by DK. Had never previously been interested in WW2 history, but something about this took my interest. While reading it, I finally appreciated the scale and complexity of WW2.

- Bobby Fischer Teaches Chess. Working through this one meant I actually started getting better at chess!

- Common Sense Guide to Data Structures and Algorithms by Wengrow. The book that helped me become interested in data structures and algorithms, rather than being something I “should” learn about.


👤 Qem
For the sciences that depend on higher maths, a Calculus book worth mention is "Elementary Calculus: An Infinitesimal Approach", by Jerome Keisler. One thing that makes learning Calculus harder than necessary is the clumsy epsilon and delta formalism, that became sort of the COBOL of Calculus teaching. This formalism is not the intuitive approach Newton and Leibniz used to develop Calculus, based on infinitesimals, that was shunned later because it took time until Abraham Robinson made it rigorous in the 1960s. The book by Keisler showcases nicely a way to improve higher math education, if academia had less inertia. The author made the entire book available for free online: https://people.math.wisc.edu/~keisler/calc.html See also: https://en.wikipedia.org/wiki/Nonstandard_analysis

👤 meiji163
Some favorite math books

Intro to Smooth Manifolds, Lee -- sweeping intro to geometry with minimal prereqs, great at balancing the nitty gritty details with conveying intuition

A Course In Arithmetic, Serre -- classically terse and elegant intro to algebraic and analytic number theory. Goes from quadratic forms to Dirichlet's theorem to modular forms in a mere 100 pgs!

Princeton Lectures in Analysis, Stein & Shakarchi -- 4 books covering much of classical/modern analysis, they really shine in their discussion of applications

The large scale structure of space-time, Hawking & Ellis -- The most mathematically satisfying treatment of general relativity I've found. High points include proof of singularity theorems!

Spin Geometry, Lawson & Michelson -- Deep dive into the enigmatic "spin groups" and their applications in geometry. Also the only good (book) reference I could find on the index theorem


👤 madsbuch
Types and programming languages, Benjamin Pierce: https://www.cis.upenn.edu/~bcpierce/tapl/

Its contents is what I consider the meta game of programming. Understanding types seems to be a real boost to think about architecture, implementation, etc.


👤 ly3xqhl8g9
Artificial Intelligence: 1787, Immanuel Kant, Kritik der reinen Vernunft (Critique of Pure Reason)—where else to find purer reason than in a machine; unfortunately, Kant has written in Kantian using German words, fortunately, there is a recent, great Kantian to English translation in the works of 2020, Richard Evans, Kant's Cognitive Architecture, PhD Thesis [1]

Beingness: 1954, Martin Heidegger, Was heißt Denken? (What is Called Thinking?)—perhaps the machine can become intelligent following Kant, but if it is to become wise, it will follow Heidegger.

Self-reflection: 1985, Alexandre Grothendieck, Récoltes et Semailles, Réflexions et témoignage sur un passé de mathématicien (Reflections and Testimony on a Mathematician's Past)—insight into one of the most powerful, clear, and precise minds to have ever lived.

Socioeconomics: 1879, Henry George, Progress and Poverty: An Inquiry into the Cause of Industrial Depressions and of Increase of Want with Increase of Wealth: The Remedy—if the human civilization has any chance to exist and thrive beyond the 4th millenium, it's hard to imagine the implementation of that society being very far in principles from this initial specification.

[1] https://www.doc.ic.ac.uk/~re14/Evans-R-2020-PhD-Thesis.pdf


👤 _qua
The Selfish Gene should be read by everyone who studies biology or life science. Modern biological sciences are underlied by an understanding of evolution an genetics. I had heard variants of the phrase "change in allele frequency in a population over time," as a description of evolution many times starting in high school. But it wasn't until I read The Selfish Gene in college that I really understood what this meant and how it should shape our view of biology.

👤 irchans
"Best Approximation in Inner Product Spaces" by Frank Deutsch.

This book is about the following problem,

"Given a point P and a set S in a vector space, find the point in S closest to P."

(The most common example of a vector space is the Cartesian Coordinate Plane which is also called R^2 because every point is of the form (x,y) where x and y are real numbers.)

This book is very simply written. All the details of the proofs are provided. Also, Professor Deutsch covers the history of many of the theorems in the book. Applications to Linear Regression, Interpolation, and Control Systems are given. The main prerequisite for reading the book is a course in mathematical analysis (Rudin or Royden) and a course in matrices or linear algebra. The book is based on the graduate level Approximation Theory course which Dr. Deutsch taught for several years.


👤 idlewords
If you're interested in the effects social media has on political and civic life, these are two great books to read. One is recent, the other is a foundational classic of social psychology:

- Zeynep Tufekci, Twitter and Tear Gas, The Power and Fragility of Networked Protest (2017).

- Erwin Goffman, The Presentation of Self in Everyday Life (1956)

Goffman uses a theatrical metaphor to talk about how our behavior and social life is affected by our perceptions of who the audience is for our actions. Zeynep writes about how the magnifying and flattening effects of social media have been both a help and hindrance to large-scale organizing. Both are wonderful books.


👤 GekkePrutser
"Unix for Programmers and Users" by Graham Glass and King Ables. Really great book that took you through the basics of Unix, the various shells, all the way to programming with system calls, sockets etc. Even dove into filesystem design, inodes etc. All in one reasonably compact book. I love books that can explain complex stuff in few words and do it well. I got it as part of my studies and I had worked through it already by the time I got the class :)

Later he made a special edition for this newfangled "Linux" stuff :) But the one I had was for the original Unix. Linux was already around at that time but still very much beta quality. At college we mainly used HP-UX and Sequent.


👤 Stamp01
Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages by Bruce Tate

Seriously, check out this book. It's delightful! It'll level you up as a software developer. Also, I've heard it heavily influenced José Valim to create Elixir.


👤 irchans
The older editions of "Physics for Students of Science and Engineering" by Halliday and Resnick are great.

Over the last 60 years, this has been the most commonly used physics text book in college. It's rather well written, and there are many very good homework problems. It covers the basics of mechanics and Electromagnetism and a few other topics also. The older editions have harder problems that are more instructive. By doing the homework problems, the reader learns physics, calculus, and the ability to manipulate and derive formulas.


👤 probablypower
For power system operations: "Power System Stability and Control" by Prabha Kundur (https://www.amazon.com/System-Stability-Control-Prabha-Kundu...)

It is the bible of modern power system operations, and it will become more and more important as more renewable energy comes online. Understanding the concepts presented in this book is the difference between "why haven't we hit 100% renewables yet?!" and "we need market incentives for inertial ancillary services".


👤 532nm
"The Art of Insight in Science and Engineering: Mastering Complexity" by Sanjoy Mahajan.

It beautifully treats estimation and problem solving techniques, illustrated by examples from science and engineering. Instead of aiming for a complete, thorough and accurate treatment of problems, its goal is to teach shortcuts to sacrifice some accuracy for much reduced effort. This is a refreshing change to academia where rigor is often pursued at all cost. But in the real world rigor rarely matter, and simplifications are almost always worthwhile, especially initially since we can always refine models if required.

I first read it as an undergraduate and use the estimation and problem solving techniques from it almost daily. Though well hidden, the pdf is available for free on the website of the publisher.


👤 danielheath
("Data and Reality")[https://www.goodreads.com/book/show/1753248.Data_and_Reality] - despite its age (written before SQL was mainstream) it remains a short, accessible read that lays out how to think about modeling an information schema, particularly where the same piece of information may be used in separate parts of the organisation.

👤 dkural
These two books I read recently are real gems / eye openers for me, which changed my view on many things:

Robert C. Allen - The Industrial Revolution: A very short introduction (don't be fooled by the book series, every sentence carries its weight).

C.S. Lewis - The Discarded Image (we get so many things wrong about what people before us thought and why).


👤 aleclm
For compiler theory, "Principles of Program Analysis" (by Nielson, Nielson, Hankin).

It is so foundational to what we do at rev.ng, that we gift a physical copy of the book to every interviewee, even if they don't pass.


👤 sabzetro
Mastery - Robert Greene (2012).

At the point in my life where I read this book, I was a recent ComSci grad, I had already started working and it was clear to me that I needed some framework to understand where I was going. Not just in terms of software, but in general, I needed some north star as far as a process and an ideal to achieve were concerned.

Reading this book gave me exactly that. A clear, understandable framework that explained the progression from understanding how to do something, to being good at doing something, to being a master. While it didn't give me a step by step guide, the lessons in this book gave me ideals by which to work out my own trajectory, whether or not I felt at any given point as though the efforts I was putting in were guiding me towards mastery, but more so than anything, this book gave me patience. I read somewhere that (maybe just in my country, I can't remember) once you've been a software developer for 5 years, you have crossed over the median age of experience in the industry. As a younger engineer, I was impatient, in a rush to do Interesting Work™ and had no appreciation for how whatever I was doing at the current moment was perhaps exactly what I needed to do to get to what was important, which is mastery. That is to say, getting past the point of good to the point of exemplary, not just being a consumer or repeater of skills but a creator of them. I read this book in Year 1 of my software career, I am now in year 5 and I know that because of this book, years 10, 15 and 20 will bring more reward and more joy in deepening skill.


👤 f1shy
Computer science: Knuth's TAOCP. And Sipser's Introduction to the Theory of Computation. Programming: SICP, K&R, and Stroustrup. Siebel's Practical common lisp. Artificial intelligence: AI a modern approach. Signals and Systems: Oppenheim's book Probability and statistics: Probability Theory: The Logic of Science by Jaynes

👤 MattPalmer1086
Since I'm into online search algorithms:

"Flexible pattern matching in strings" by Gonzalo Navarro and Mathieu Raffinot.

A rare book that marries the theoretical and practical. It has good worked examples.

https://www.cambridge.org/core/books/flexible-pattern-matchi...


👤 Gaessaki
Managing the Professional Service Firm by David Maister.

No longer doing consulting, but found it invaluable as a tech person building a consulting team and trying to break into enterprise. Probably useful for any professional consulting through a firm (lawyers, accountants, big 4, etc.)

Someone mentioned Designing Data Intensive Applications which I’m partial to as well.


👤 yboris
In psychology, I think Culture of Honor is absolutely stellar:

Culture of Honor: The Psychology of Violence in the South by Richard E. Nisbett & Dov Cohen

https://www.amazon.com/Culture-Honor-Psychology-Violence-Dir...

The authors weave together a basically airtight argument for their thesis, drawing on historical, sociological, and experimental evidence to describe and explain the phenomenon called "culture of honor". It's a short book and really worth reading to see how well an argument can be made.


👤 lizknope
Computer Architecture: A Quantitative Approach by John L. Hennessy the creator of MIPS and David Patterson the creator of Berkeley RISC (later SPARC)

Advanced Programming in the Unix Environment by W. Richard Stevens


👤 hef19898
"Designing and Managing the Supply Chain" by Simchi-Levi. My copy is almost 20 years old but still covers all the fundamentals and most of the necessary details of how supply chains work.

"Logistics Engineering and Management" by Blanchard. The Integrated Logistics Support bible, of you go by some people. Also, the engineering and product development companion to the first book. It covers how good products are designed that can be builf, sourced, maintained and supported throughout their lifetime. Despite the title, actual logistics are not covered. A must for everyone involved in the development of non-consumer goods hardware with life times above 3 years. And also agreat resource for those consumer products. If you always wondered why defense contract are as expensive as they are and are usually signed for a couple of decades, this book gives you the theoretical basis for one part of the answer.


👤 weinzierl
Brigham's book on the Fast Fourier Transform was an eye opener for me. Not so much because of the "Fast" part (which is super interesting and useful too) but it was the introduction I needed to make integral transforms and convolution click. And that helped tremendously to connect a whole bunch of other dots.

👤 gavinray
Not a professional database developer but study it in my spare time

Books that stand out to me are:

- Database Internals, Alex Petrov

- Database Design & Implementation, Edward Sciore

- How Query Engines Work, Andy Grove

These have been much more useful than IE the Cow book or "DB Systems The Complete Book" to me.


👤 logicalmonster
I am not a professional game designer, but I really like "The Art of Game Design: A Book of Lenses". It teaches you to look at games (and all kinds of experiences) through different viewpoints like looking at the economy of the game or looking at the love and relationships in the game. Very interesting for thinking about the complex systems within modern games.

👤 freediver
This was featured recently (best books by subreddit comments):

https://www.redditreads.com/subreddits


👤 jackconsidine
I run a professional software-development firm, and Managing the Professional Service Firm by David Maister is the most accurate and instructive book I've read on the topic (and not for lack of other books).

Maister basically made a manual of my whole world which includes things I never thought about like "leverage formulas" and "service programs". Would highly recommend if you are a partner of a firm or thinking of starting your own.


👤 gautamsomani
Code by Charlse Petzold.

Structure and Interpretation of Computer Programs aka. SICP.

Designing Data-Intensive Applications by Martin Klepmaan.

The C Programming Language by K&R.

Distributed Systems by Tannebaum.


👤 azhenley
The Design of Everyday Things.

It really changed how I view software (or any product) as just a tool to help people.


👤 lostintangent
Understanding Michael Porter: The Essential Guide to Competition and Strategy

This is a commonly cited book about “strategic thinking”. But despite that, it’s one of the few business books that I actually read every page (as opposed to spotting fluff and selectively skipping pages), and it had a notable impact on the way I think/write/communicate.


👤 bmitc
I have a lot, probably too many to list, but the Scientific American Library series has some of the best science writing ever, by luminaries in the respective fields like John Wheeler, P.W. Atkins, Julian Schwinger, and others.

https://www.thriftbooks.com/series/scientific-american-libra...

I'm slowly collecting all of them, as they can be had in great condition for cheap.


👤 memorable
I'm a bit into competitve programming, so Competitve Programmer's Handbook by Antti Laaksonen is a solid book if you want a reference for CP.

👤 photochemsyn
Molecular Quantum Mechanics by PW Atkins and RS Friedman

Kind of a niche subject but this one really stands out. The prerequisites are a fairly solid understanding of linear algebra and differential and integral calculus. It's for anyone interested in spectroscopy from IR through UV, the electronic structure of molecules, approximate techniques, molecular symmetry and group theory, computational matrix-based methods, etc.

For background on computational linear algebra, this one is great:

Linear Algebra: A Modern Introduction by David Poole


👤 gabereiser
Physically Based Rendering (vol.3) Pharr, Jakob, Humphreys.

Because it covers most, if not all, the maths required to do PBR right. If you are interested in graphics, this book MUST be on your shelf.


👤 heinrichhartman
# Pure Mathematics / Geometry

- Harshorne - Algebraic Geometry

- Bott, Tu - Differential Forms in Algebraic Topology

- Milnor, Stasheff - Characteristic Classes

- Milnor - Morse Theory

- Serre - Linear Representations of Finite Groups

- Fulton - Intersection Theory


👤 Overtonwindow
The Cuckoo’s Egg by Clifford Stoll. In my humble opinion, it should be a foundational text to read for all technology students.

👤 fermigier
Physics: Feynman's lectures on physics.

Maths: Rudin's Real and Complex analysis.

Software engineering: The Mythical Man-Month.

Computer science: Knuth's TAOCP.


👤 User23
Dijkstra’s A Discipline of Programming and its spiritual successor that he did with Scholten Predicate Calculus and Program Semantics. They changed how I think about programming.

👤 lamontcg
Here's a request: someone once recommended a text book which lays the foundations for understanding all different kinds of programming languages (and presumably their design tradeoffs). And the people who had read it commented that it made it easy to understand different programming languages quickly. Anyone got an idea of what book that might be?

👤 emadabdulrahim

👤 CSMastermind
The Quest by Daniel Yergin

Subtitle "Energy, Security, and the Remaking of the Modern World"

Is THE book for understanding the structure of the energy industry. Whether you're in it or just a curious person it's a phenomenal read.

He has a sequel out that I haven't picked up yet but I'd recommend The Quest to absolutely everyone.


👤 rwilson4
Generalized Linear Models by McCullagh and Nelder completely changed my perspective on supervised learning.

👤 abdul-bahajaj
Essentials of Compilation book and lecture series by IU

A big portion of most compiler books focus on parsing. This book instead focuses on implementing a lisp to assembly compiler. Lisp being easy to parse the parsing topic is skipped, instead it focuses on more interesting topics, like register allocation, garbage collection, closure conversion, dynamic typing and so on!

At the end of the book you will have a lisp to assembly compiler and be able to imagine how complicated high level constructs actually run on the machine which is exciting to say the least.

The book is accompanied with optional lectures.

https://iucompilercourse.github.io/IU-P423-P523-E313-E513-Fa...

------

Operating System Design: The Xinu Approach, Second Edition

Unlike most operating system books, this one goes over the implementation of a simple embedded operating system ( Xinu ) and explains its mechanics by going over its code and internal data structures. It also has interesting exercises like extending the OS to support virtual memory.

If you are planning to read this book you should buy one of the supported hardware boards so that you can actually run the OS on it, modify it and load it again to see your changes in action.


👤 ahoyhoy
How Brands Grow by Byron Sharp is the most compelling overview I have come across about how marketing works at the aggregate level. Despite its flaws, Thinking Fast and Slow is a good companion piece inasmuch as it sheds light on how decisions are made at the individual level.

👤 pyb
The Art of Electronics, Horowitz and Hill

👤 nano9
Neuromancer

Snow Crash

Blindsight

(Just some fun fiction to bolster one's passion for their chosen profession. Obviously TAOCP, SICP, K&R, and other books in their ranks are better answers.)


👤 ManuelKiessling
„The Dream Machine“ by M. Mitchell Waldrop.

It had such a profound effect on me wrt my profession and passion — nearly as if I had grown up without a family, and then one day, the family knocks on my door, and I became whole.


👤 kwhitefoot
Physics: The Feynman Lectures on Physics. Now available online at https://www.feynmanlectures.caltech.edu/

👤 calderwoodra
the Unbanking of America - the author does a deep dive and recounts first hand experiences of lower income Americans dealing with banks. I would say this is required reading for anyone interested in Fintech/neobanks that target the lower income segment


👤 Graa
Hacking: The Art of Exploitation 2nd edition

This book teaches excellent hacking techniques. Everything is build from scratch (c/assembly) so you get to understand things like buffer overflows to the core.


👤 hankchinaski
"how to measure anything" by douglas hubbard is a good one especially if you work in a product focused role

👤 wunderlust
My field of study (what I really like to think and learn about) isn't my field of work, but I like the question so I'll spill some thoughts.

I spend a lot of time thinking about philosophical-ish stuff, so here are some books that have had the strongest residual effects (whether that's changing how I think, changing what I think about, changing my values, or simply getting the thought ball rolling faster):

Ishmael (Daniel Quinn)

1984 (George Orwell)

Brave New World (Aldous Huxley)

Godel, Escher, Bach (Douglas Hofstadter)

The Republic [imp. "the allegory of the cave"] (Plato)

The Genealogy of Morals (Friedrich Nietzsche)

The Social Construction of Reality (Peter L. Berger, Thomas Luckmann)

Tractatus Logico-Philosophicus (L. Wittgenstein)

Dissemination [imp. "The Pharmakon"] (Jacques Derrida)

The Quest for Reality (Barry Stroud)

Languages of Art (Nelson Goodman)

The Structure of Scientific Revolutions (Thomas Kuhn)

Concepts (Jerry Fodor)

The Web of Life (Fritjof Capra)

Foucault's Pendulum (Umberto Eco)

Naming and Necessity (Saul Kripke)

Zen and the Art of Motorcycle Maintenance (Robert Pirsig)

There are others, and a lot of essays (by thinkers like Bertrand Russell, Carl Hempel, Hilary Putnam, WVO Quine, Karl Popper, Alfred Tarski, Gottlob Frege, David Chalmers, Daniel Dennett, Michel Foucault, Jean Baudrillard, Mikhail Bakunin, CS Peirce, and David Hume, among many others), but these seem apropos as they most readily came to mind.


👤 edumucelli
"The Art of Computer System Performance Analysis: Techniques for Experimental Design, Measurement, Simulation and Modeling"

I have seen so many errors on computer science benchmarks and experimentation that I think this book is a must read when it comes to "how to compare things" in computer science. It goes from the basics to advanced scenarios. I have really great memories of studying quantitative methods during my Master's Degree and reading this book. It is really an underrated book. The confidence it gives when you base your experimentation/benchmark on the theories this book gives is amazing, whatever your audience is you can step in and present the results feeling that what you present is really what it is.


👤 austinpena
“Breakthrough Advertising” by Eugene Schwartz.

The relevance for any marketer is incredible. Much of what I read from “gurus” is essentially just rewording this book.


👤 fuzzmuzzy
The Jazz Theory book - Mark Levine

High Performance Browser Networking - edit: Ilya Grigorik

Effortless Mastery - Kenny werner


👤 pavlov
“The Ecological Approach to Visual Perception” by James J. Gibson completely changed how I think about vision and moving images.

👤 tootie
Design of Everyday Things applies to almost any design or engineering discipline. You'll never look at a door the same way.

👤 defrost
Map Projections: A Reference Manual - John P. Snyder

Gravitation - Misner, Wheeler, Thorne

Already mentioned: (it's a goody)

Linear Representations of Finite Groups - Serre


👤 twoodfin
“Transaction Processing: Concepts and Techniques” by Jim Gray & Andreas Reuter. Rightly the Bible of database systems.

👤 nomadiccoder
Continuous Delivery Pipelines: How To Build Better Software Faster by Dave Farley

It is such a low effort - high reward endeavor to get up to speed quickly in DevOps and for communicating product strategy


👤 joshjb17
Probabilistic Robotics. Great overview of fusion and perception techniques for robots with various sensor types, reads like a world class lecture series instead of being a dry textbook.

👤 ipnon
“Deep Learning for Coders with Fastai and PyTorch: AI Applications Without a PhD” will allow you to design and implement deep learning models with only good programming skill. Basic maths, no algorithms, no proofs. Howard’s paper on ULMFiT was state of the art 5 years ago, and it was originally just a part of this book. My claim is that this will be considered a classic in due time. It turns deep learning from an academic discipline into programming problems.

👤 garfieldnate
I recently finished _An Introduction to Linguistic Typology_, by Viveka Velupillai. It does a great job of summarizing areas of linguistics at the beginning of each chapter, giving readers a good refresh of basic linguistics, followed by extensive examples of the variety of strategies employed by languages across the world. The examples are taken from a truly wide variety of languages, many of which I had never heard of, and there's also extensive discussion of statistical tendencies seen in surveys of a wide swath of languages. The different tendencies found in pidgins/creoles are also treated extensively, and each chapter even has a section on sign languages, which are unfortunately still massively understudied.

Overall it felt like an intro to linguistics course book but on steroids. It was really great for widening my exposure beyond the economically powerful languages that are usually the focus of analysis.


👤 intrasight
Object-Oriented Analysis and Design with Applications

Was a great source of design patterns when I first began to design business applications on top of relational databases.

https://zjnu2017.github.io/OOAD/reading/Object.Oriented.Anal...


👤 SanjayMehta
Hacker's Delight by Henry Warren.

Don't get distracted by the name, it's about binary mathematics. Bit twiddling at its finest.


👤 alok-g
A paper, not a book, but better than books on the subject:

Automated Theorem Proving, David Plaisted https://wires.onlinelibrary.wiley.com/doi/abs/10.1002/wcs.12...


👤 pfisherman
Elements of Statistical Learning by Hastie, Tibshirani, and Friedman

👤 eimrine
A Child's Garden of Verses.

👤 mentos
Not a technical book but A Theory of Fun for Game Design by Raph Koster had a few perspectives I’d never considered.

👤 arduinomancer
Graphics programmer at a game studio

Real-Time Rendering is probably my most used book when I started

It is more of a breadth than depth book though


👤 revskill
Haskell wiki.

It's mostly a bunch of functional programming stories, where you learn in a broad scene what's FP is about.


👤 ghoomketu
Ihe e-myth book by michael gerber. It hits you right in the face when you're a.. what he calls the Technician masquerading as an Entrepreneur.

It's truly an eye opening book and really helps you see the systems in everything from a bakery to the hotel chains as soon as you've read it.


👤 mbrodersen
“Rich Dad Poor Dad”. Not my field of study (finance) but it can be argued that it is relevant to anybody who cares about their long term financial health. It completely changed how I spend money and build for the future. It is a small book and easy to read.

👤 lambdatronics
I loved the grade-school math textbook series by Harold Jacobs:

- Mathematics: A Human Endeavor - Elementary Algebra

They are peppered with cartoons (especially B.C.) and have lots of real-world motivation. I definitely recommend them for your kids if you have the choice.


👤 philliphaydon
Lots of interesting suggestions from people!

I love “the inmates are running the asylum”

This book made me feel like a shit developer, but also made me change the way I think about software. I think it made me a much better developer in how I approach a problem and how I solve it for the customer.


👤 komatsu
AI and ML: Simon J.D. Prince; Computer Vision: Models, Learning, and Inference. Thorough book with unorthodox explanations and great figures. The book is very pleasant to read. I'm eagerly awaiting new book on Deep Learning from the same author.

👤 pieterr

👤 theshrike79
Peopleware

It should be mandatory reading for anyone leading a team of any size. The book is from 1987 and the insights into building efficient teams and team spaces is still perfectly valid - like we haven't learned anything during the last 3 to 4 decades.


👤 damontal
Thinking in Systems by Meadows

👤 satisfice
The best book on software testing was written in 1974 and doesn’t mention testing: Introduction to General Systems Thinking, by Jerry Weinberg.

The best book on consulting is by the same guy: Secrets of Consulting.


👤 olynch
Statistical Rethinking, Richard McElreath

👤 limbicsystem
Vision science: Foundation of vision

https://foundationsofvision.stanford.edu/


👤 MrsPeaches
Introduction to Heat Transfer by Frank P. Incropera and David P. Dewitt

Wind Energy Handbook by Tony Burton, Nick Jenkins, David Sharpe, Ervin Bossanyi

The Art of Electronics by Horowitz and Hill


👤 legitster
Not my field per se, but in a college course they had us read "All I Need to Know About Manufacturing I Learned in Joe's Garage"

The entire book was a short, simple allegory about Lean manufacturing that walks you through exactly why Lean is so powerful, in a direct comparison to traditional methods. The book was written to be handed out to dumb auto executives.

I still think about the book a lot today even in the software world.


👤 natmaka
"The Breakdown of Nations", by Leopold Kohr, clearly explains the main cause of 'advanced' nations current problems.

👤 xwowsersx
Great replies here. I found a bunch of new books that I'll be digging into seriously. Thanks for kicking off a great thread OP!

👤 dwt204
Book- Simulacra and Simulation Author- Jean Baudrillard

👤 kbtdr
Existential Psychotherapy - Irvin D Yalom. A profound, well written book. Once you understand yourself, it helps you to understand others.

👤 js2
I've been programming since I was 10, earned a C.S. degree in '96, and have been a successful generalist working as a sysadmin, programmer, network engineer, devops, open-source contributor, etc at everywhere from a small ISP in a college town where I was the only tech person to startups to companies as large as H.P. working on enterprise software. Really a bit of everything. I guess you'd call it dev-ops, but even if I were just a programmer, my curiosity about how things work would drive me to understand my tools better. And at the same time, even if I were just a sys admin, my impatience for repetitive tasks would drive me to automate my tasks.

These are the books that really helped fill out my knowledge and helped me in my day-to-day work. In no particular order:

Code by Charles Petzold. I read this around 2010 for the first time. There isn't really anything in it I didn't know, but the material is just so amazingly well presented that it helped me realize there were things I could only explain in a very hand-wavy sort of way or that I'd forgotten. Just an amazing book. I re-read it every so often. I just got the 2nd edition and look forward to reading it soon.

Higher Order Perl by Mark Jason Dominus. Even though I'd mostly moved on from Perl when I read this, this book really helped me better understand C.S. concepts that I should have learned better getting my degree. This is secretly a book about Lisp for people who are allergic to parenthesis. After reading this book, I was able to back to The Little Schemer and The Seasoned Schemer and get a lot more out of them.

All of the Stevens books, but probably UNIX Network Programming to start. I had the TCP/IP state diagram (from TCP/IP Illustrated) taped on my on cubicle wall for a decade or more.

Mastering Regular Expressions by Jeffrey E. F. Friedl. You get what's on the tin with this one. I've used RE's to great effect throughout my career and I mostly have this book to thank for it.

Programming Pearls by Jon Bentley. A humbling book. I read it and think "that's really clever, I would not have thought of that."

These are the ones that spring to mind. I'd have to peruse my bookshelf to see if I'm missing any other obvious entries. I've used a lot of the O'Reilly books over the years too, e.g. sed and awk. I'm also intentionally leaving out text books that would be part of any C.S. degree.

As an addendum: Man pages. All of them. The Linux man pages, maybe not so much. SunOS was my introduction Unix, and I was spoiled by their quality and comprehensiveness. I recall one day discovering "man intro" and then spending a week doing nothing but reading man pages. http://software.cfht.hawaii.edu/man/solaris/Intro(1)


👤 dev_0
Antifragile by Nassim Taleb

👤 froh
The Principles of Product Development Flow: Second Generation Lean Product Development by Donald Reinertsen

its neither a manifesto (like agile) not a specific architecture (like scrum or safe or XP or kanban, etc). instead it's collecting the underlying _principles_ of collaborative software engineering flow and it's motivating why they work.


👤 koeng
“A Genetic Switch” is one of the best books in my field. The entire book is about a single genetic switch in a bacterial virus, starting off high level before going down into the nitty gritty, all for this single switch. Highly recommend for a deep dive into how genetics can actually be controlled, down to the physics level.

👤 ftio
Inspired by Marty Cagan is the best book on product management I've ever read, despite its corny name.

👤 surfpel
Microelectronic Circuits by Adel S. Sedra and Kenneth C. Smith

Signals and Systems by Alan V. Oppenheim and Alan S. Willsky


👤 BMc2020
Electromagnatic Compatibility Engineering, Henry Ott

The Elements of Style, Strunk and White

The Hardest (working) Man in Showbiz, Ron Jeremy


👤 hovden
Classical Electrodynamics By Jackson

Numerical Recipes By William H. Press et al

Quantum Theory of Materials By Kaxiras


👤 radley
White by Kenya Hara

Many ways of thinking about the color white. Its meaning. Its place in the world. Its purity (and yet seldom pure). How it can be something and nothing at the same time. Great design-thinking fuel.


👤 ISL
Building Scientific Apparatus

👤 hprotagonist
Signals and Systems by Oppenheim, Willsky and Nawab is a foundational text.

👤 thushan
From the lens of a Product Manager working in ML / Large Language Models...

The Alignment Problem

By Brian Christian

How do we tell the computer to do all the things we want it to do, all the things we don't want it to do, and all the things we didn't realize we want it to do or not do? How do we capture the rich implied and inferred nature of humanness? That's the Alignment Problem. The book dives into this broadly – but also gives an excellent non-technical survey of the evolution of machine learning.

Understanding Comics: The Invisible Art

By Scott McCloud

This is magnitudes more than a dive into the perhaps easy to dismiss artform. This book is about storytelling and why great stories resonate. It's one of the best pieces of media, on media, period.

An Elegant Puzzle: Systems of Engineering Management

By Will Larsen

When I my company was acquired by a very-big-Giant, my personal antibodies reacted negatively to the how the big G's way of thinking and doing – I was harmfully autoimmune. To some extent I had to accept things, to another extent I needed a different perspective. This book helped me transition and it's one I push on all of our leads. While we as PMs don't manage people directly we architect the whole system – and this book is an insightful (I buy it for all the team's leads) lens on how big teams where personal alignment and corporate alignment problems need to be negotiated.

Exhalation Stories

By Ted Chiang (also recommend Stories of Your Life)

The author has an absolute magic way of taking a kernel of an idea and spinning not only a whole world, but a whole new way of looking at the world – all in the span of a short story. You can't get any closer to home than "The Lifecycle of Software Objects" where the protagonist rears an artificial intelligence from "pet" to a human-like mind.

The Pragmatic Programmer

By David Thomas and Andrew Hunt

PMs need to get things done. Even if we don't code, we need to think deeply on how it's built to ensure it achieves our goals now, and what we project them to be in the future. As the title suggests, a pragmatic take on building code-driven systems.

Design of Everyday Things

By Don Norman

The OG design-thinking before IDEO corporatized it.

Principles

By Ray Dalio

"Principles are ways of successfully dealing with reality to get what you want out of life." This book influenced me to distill how we take action and prioritize and how we decide as a team. I'll admit some of the set up of the book irked me, but the distilled world view that form the Principles in the second half of the book generally resonates; the world works a certain way, find those patterns, use it to your advantage (and for good).

The Visual Display of Quantitative Information

By Edward Tufte

You could jump into any of Tufte's books, on any page, and come away with new ways of looking/thinking/telling stories about data. ML problems are data problems – let's think well beyond raw dumps and tables.


👤 throwaway5371
all of Tanenbaum's books, especially Structured Computer Organization

👤 robotburrito
TCP/IP Illustrated was my bible when I worked at ICSA Labs.

👤 iansowinski
"Laboratory life" by Bruno Latour and Steve Woolgar

👤 Icathian
Designing Data Intensive Applications.

Operating Systems in Three Easy Pieces.


👤 amused2death
ecology of the planted aquarium by diana walstad

👤 avg_dev
I don’t have anything to add, I just wanted to say thanks for this. It is one of my all-time favorite HackerNews posts.

👤 benfrancom
Using Unix 3rd Edition by Peter Kuo because it helps in understanding basic Unix principles and tools.

👤 Oras
- Designing Data Intensive Applications

I think it should be read by all software engineers not just data engineers.


👤 BOOSTERHIDROGEN
Steam: Its Generation and Use

👤 nazgulnarsil
Vision by David Marr

Heuristics by Judea Pearl

The Art of Doing Science and Engineering by Richard Hamming


👤 torvald
Working mostly with IT operations, I'd say the Google SRE books.

👤 greenie_beans
forever free by eric foner, history of reconstruction after the civil war in america

👤 rodolphoarruda
Getting Real, Jason Fried.