Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What are some high quality books you’d recommend that are somewhat recent (last ten years)?

The only ones I can say, that I’ve also read, are YDKJS and Secrets JavaScript Ninja (work in web, but willing to read anything, good information is good information regardless of the tech).



Here are some books that have stood out for me. They cover some of the technologies that I either have to work with, or am personally interested in.

Effective Java by Joshua Bloch

Practical, actionable guidelines. The first edition was the best, the second was diluted somewhat by having to cover generics, in the third he admits that he doesn't really use Java much anymore... Despite that, it's well-written and still a good book.

The Linux Programming Interface by Michael Kerrisk

Covers some of the history of the Linux/Unix API, describes it in detail, has plenty of examples, compares different APIs that do similar things so you can make an informed choice (e.g. System V vs. POSIX message queues).

If any book in this list stands out for me, it's probably this one. It might be partly due to the surprise factor of how enjoyable and well-written a 1000+ page, near-reference book is.

Programming in Haskell by Graham Hutton

An intro to the language and how to approach problem solving from a functional P.O.V. Not as comprehensive as some other intros to Haskell, but Hutton is a good writer and educator, making it a good read.

Designing Data-Intensive Applications by Martin Kleppmann

Provides an overview of a number of topics related to databases, distributed systems, consensus, etc. Lots of references (many of them online) if you like that in a book. Enjoyable to read.

Parallel and Concurrent Programming in Haskell by Simon Marlow

Probably a must-read if you're into Haskell; probably too esoteric if you're not... Well written.

Type-Driven Development with Idris by Edwin Brady

Describes a programming language similar to Haskell, but strict by default and with dependent types designed-in from the start. Also describes techniques for leveraging the type system to construct functions (the type-driven part of the title). Well written.

Hacker's Delight by Henry S. Warren

Low-level bit twiddling. 'Nuff said.


in the third he admits that he doesn't really use Java much anymore...

What does he uses now?


I misremembered what he said in the preface. I thought he had said that he was using Java less often, but what he actually wrote was, "I still like Java, though my ardor has cooled a bit as the platform has grown."


High Performance Browser Networking - it's 2013 but apart from new tech and higher speeds, the basics of networking remain the same (also available online since a recently at https://hpbn.co/)


This looks cool. I use to work at a national ISP and really miss the world of network engineering, granted browsers are one aspect of it but it's a very unique industry compared to e-comm and marketing tech.

Thanks for the rec!


Pro Git, Coders at Work both are ~10 years old. A recent one is Site Reliability Engineering published in 2016


Whoah, it's already ~4 years since the SRE book... How time flies.

I wrote two of the chapters in the SRE book but I have very mixed feelings about them. I'm glad that I got a chance to talk openly about some of the work I've been doing for the last decade, but I felt that, in the end, I couldn't devote to my chapters as much time as I would have liked, so I don't feel as proud about them as I would have liked. Boy, this really took soooo much time!

I don't know what I'm trying to say, I guess just that I find seeing someone praise the book interesting. What were your favorite chapters?


Embracing Risk changed how I think about downtime, the other chapters didn't really offer anything new for me, I already used those principles in practice, so I can't really pick a favorite from those.

Despite that, I still recommend it to anybody new to DevOps/SRE/Cloud Engineering/whatever you call it, with a grain of salt that you don't operate at Google scale so you shouldn't implement it as is. Just reading the principles chapters helps a lot to talk the same language.


Pro Git is something I've been meaning to read, as someone who my team considers a "git expert" (I'm the only one who knows how to rebase and handle conflicts thru mergetool on the CLI -_-).

I've heard great things about it, definitely need to add it to my queue.

The SRE book is also interesting. There was a conference recently where one of the authors gave a talk [1] about training. Really encouraged me to at least get the PDF.

[1] https://www.youtube.com/watch?v=8iaNMMwozCc


You will learn a lot from the Pro Git book. The good thing about this book is that it builds up your knowledge from the ground up without being boring. You will learn what's happening in the background. In the end, I got more confident using git because I realized if it's committed I can revert back to it.




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

Search: