Few developers read programming books. Why read pages when writing code is more fun? If there is one book that can make you change your mind, this is it.
The first edition is the best-selling book at O’Reilly. You just have to read the first few pages to understand why. I loved reading this first edition when it was published. I loved reading this second edition as much. There are a lot of overlap between the two editions, for sure, but it’s not the kind of book that you can digest in just one reading, even if you are familiar with distributed systems. The second edition is welcome and cover recent advances such as local-first apps, databases built on top of SIMD instructions, stream processing.
It’s a massive AND concise book. Concepts are explained at the perfect level of abstraction. The patterns used by data technologies are explained in a crystal-clear, product-agnostic way, and illustrated using popular technologies.
It’s easy to find reasons why you need to read this book. Programs are basically algorithms manipulating data. If you want your system to scale, if you prepare for system design interviews, if you are curious to understand how data technologies work under the hood, if you have to design the architecture of your system, or if you just committed to learning what every backend developer must know, read this book. This book will prove (in)valuable.