Good advice, but it doesn't help when one's coding in a larger system not just written by oneself. Then there's operator overloading; you can't trust anything to be doing what it suggests in an unknown, or large, codebase. Code readability goes down the pan if too much is hidden by mis-used OO techniques.