You can't be a JS dev without reading this book. This book is a masterpiece that explains JS in very depth. The second edition of the book is work-in-progress but you can still read the first edition that will always be the goto guide. This is one of the highly recommended books for JS devs
If you are starting with JS or if you want to learn in-depth JS then this book is the right resource. Unlike some programming books, this book contains a lot of practice programs that you can use it in your real-life projects too. And in the latest version, the author has also updated for the new features of JS and he has also shown how to write clean and simple code in JS.
Written by one of the JS experts, this book explains genuinely elegant parts of JS. Reading this book you will understand that JS is not like other languages and understanding the good parts of JS will help you to write better code. And of course with learning the good parts you will learn the bad parts too :P
Exploring design patterns in any language is always exciting. Learning to implement some important design patterns in JS helps you to learn about the language more and write reusable code in your application. This book covers some advanced concepts in JS in implementing design patterns. So this book definitely helps in writing clean, readable and scalable code in JS
Performance is a feature. This book provides a hands-on overview of what every web developer needs to know about the various types of networks (WiFi, 3G/4G), transport protocols (UDP, TCP, and TLS), application protocols (HTTP/1.1, HTTP/2), and APIs available in the browser (XHR, WebSocket, WebRTC, and more) to deliver the best—fast, reliable, and resilient—user experience.
This book talks about composition and why it is the essence of the software. And explains that all software design is composition: the act of breaking complex problems down into smaller problems and composing those solutions. Most developers have a limited understanding of compositional techniques. The composition will definitely change your perspective towards writing software.
That's it :)
Thank you for reading :) :)