Elegant Objects Vol. 1
There are a lot of misunderstandings about what Object-Oriented Programming (OOP) is and what are good OOP practices. Learning to be good at OOP can be one the most valuable things you know, as it is so common in the industry.
Many of the recommendations in this book will seem extreme to some practitioners of OOP, but before disregarding them, try them, and maybe you will find that these crazy ideas are not that crazy.