This is an amazing book which contains tons of good practical advice for programmers, but more importantly explains the "why" behind various things you've always heard. There are things I feel I understand after reading this book which I previously only "knew" on the level of a teacher saying "take my word for it."
The book also lets you seen behind the scenes of Java programming in a way you possibly never have before, because Joshua Block is one of the developers behind Java itself, and all the main Oracle supported libraries. As such he can tell you that certain implementations in the standard Java libraries actually violate various best practices (either by accident or because those best practices hadn't emerged at the time of development). Almost always he will note that the problem cannot be fixed due to backward compatibility and has consequences to this day. Very few textbooks actually let you see inside details like this.
No other book I've read gives this kind of insight. And it's not even a hard read.
New Year, New You
Ideas to start the year
Shop now