Hacker News new | comments | ask | show | jobs | submit login
Ask HN: Which books have helped you the most professionally?
110 points by marai2 10 months ago | hide | past | web | favorite | 37 comments
Often times I see threads on HN about good Compuer Science books, but I'd like to find out which books have helped you the most in your career growth (which may not specifically be CS type books) or professionally (which may be CS type books).

Edit - having a few words describe how the book was helpful would be really useful!

Would it be ridiculous if you upvoted this comment??

Never Split The Difference - Chris Voss

This book has made a much greater negotiator both professionally and personally.

“Would it be ridiculous if” and “How am I supposed to do that?” Have saved me 100s of thousands of dollars!! The only negative point is that the negotiation style does not work on my wife ever since she read the book.

Seconded on all counts. Except I'm not planning to recommend the book to my wife for exactly the reason you mentioned! ;)

How to win friends and influence people. Helped me solve some approaches to handling people in general and highlighted a few approaches that I had been taking that were actively causing me problems.

The Secrets of Consulting: A Guide to Giving and Getting Advice Successfully by Gerald Weiberg. [1] Helped me understand why technical problems are rarely just technical.

Working effectively with legacy code by Michael Feathers [2]. Practicing some of the techniques in this helped me get my foot in the door in a job long ago where one of the interview scenarios was "This is broken, go ahead and fix it.". I recommend reading this for anyone working on a code base that's been around for a while.


[1]: https://www.amazon.com/Secrets-Consulting-Giving-Getting-Suc...

[2]: https://www.amazon.com/Working-Effectively-Legacy-Robert-Mar...

For a non-cs book, checkout Deep Work by Cal Newport. It's been a little while since I read, but what struck me most is the mindset to avoid distractions.

I am truly greatful of reading that book. IMHO, A must read for our email/social media burdened world.

The War of Art - about overcoming that nagging resistance to getting stuff done that we all feel.

Have you seen this video? It is basically the war of art book illustrated with movie scenes: https://youtu.be/1lTcgSzf0AQ

Wow, that video was much better than the book in my opinion. The book spends chapters and chapters repeating the exact same thing over and over. And then the last third of the book is about divine inspiration and other things I just couldn't get into.

I always thought the book would have been better as a blog post or two, but the video format was perfect. It presented the ideas and gave advice on how to achieve them. I took a lot more from that video than I did from the book.

Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems by Martin Kleppmann. Absolute best book on system design.

"How to Solve it" was great for me from an abstract problem solving point of view. It helped me get better at seeing which abstractions help solve an otherwise difficult problem, which is a useful skill to have for coding interviews and, really, most technically difficult problems encountered during the work day.

As a small business owner I'd have to say E-Myth Revisited and Work the system.

Because once you learn systems thinking, you see the world totally differently and from a business point of view, understanding how their systems work is like getting to have a look at the source code of that business.

If you want to embrace DevOp culture, where it comes from, why is it important and the reality of medium big businnesses, then you definitely want to read the Phoenix project

How to win friends and influence people

some of my favorite parts of The Recognitions are the ones that make fun of that book

>There was, finally, very little need to know anything at all, except how to “deal with people.” College, the author implied, meant simply years wasted on Latin verbs and calculus. Vergil, and Harvard, were cited regularly with an uncomfortable, if off-hand, reverence for their unnecessary existences...In these pages, he was assured that whatever his work, knowledge of it was infinitely less important that knowing how to “deal with people.” This was what brought a price in the market place; and what else could anyone possibly want?

I re-read the book's important points every year. Really nice book.

"What Got You Here Won't Get You There: How Successful People Become Even More Successful" by Marshall Goldsmith helped me become a better teammate and communicator.

You've Only Got Three Seconds by Camille Lavington. Basically helped me to understand what I can do to make a good impression on others.

33 Strategies of War. It's good for dealing with any and all types of conflict, including conflicts with yourself. Half of the book is unconventional techniques most people don't even think of.

Similarly themed is Extreme Ownership, which covers leadership in chaotic situstions.

Militaries are designed to deal with the chaos of war, and a lot of principles apply to the chaos of software engineering too.

Pitch Anything - About selling and the psychology of selling. Really need to re-read that one actually.

And +1 for Deep Work, So Good They Can't Ignore You or The World Beyond Your Head. They made me realize that being in a profession where you can reach "flow state" actually is a privilege.

"Large-Scale C++ Software Design" by John Lakos. The only book (as far as I know) that really teach you the nitty gritty of handling very large scale systems (not just C++ systems). Something I have needed more than once in my career.

Mythical Man Month

SICP, the foundation on which my career rests.

Sorry, that was a joke. If I was honest I might say K&R's 2nd edition of "The C Programming Language".

Definitely this one and also Algorithms + Data Structures = Programs by Niklaus Wirth.

SICP almost turned me into an unemployable mess.

Fortunately I managed to forget it all and am now happily earning a good living in a subset of Pascal called Go.

Off topic, but I'm curious: Why do you call Go a subset of Pascal? Go seems to me to be rather different, both in spirit (much less restrictive and nanny-like) and in syntax.

Could you explain?

I'm no professional but I was very impressed by the immediate utility and domain independence of what I gained from reading "Thinking, Fast and Slow".

I've always felt that intelligence is largely cultivated (or at least a significant portion of what we commonly refer to as 'intelligence'), and much of this book seemed to agree and offered constructive advice on improving ones cognition, along with making use of many quirks, oddities and primitive habits our brains have been endowed with.

ReWork by Jason Fried and David Heinemeier Hansson (good reference on good principles)

Traction by Gino Wickman (how to create SOPs & scale)

Authority by Nathan Barry (how to develop an audience)

The Power of Habit by Charles Duhigg

Wow what an amazing coincidence. I was at the library today and picked up this book. It wasn't featured in any way, my eye just happened to fall on this particular book, on one of the many many shelves there.

POODR - Practical Object oriented design in ruby. Changed my way of coding entirely, brought me to a completely different level and pushed an even bigger growth

Difficult Conversations

Primal Leadership

Necessary Endings

One I haven’t seen mentioned yet is Time Management For Systems Administrators. The concepts also work for devs too.

Software Craftsmanship from mancuso helped me a lot to find meaning in my work as a software devloper

First 90 days from HBR

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact