I agree with this topic so very much! I tank. I am a very good tank. If someone is not performing to the best they can be, I will offer advice as best I can and with as much tactfulness and humility as possible. Because giving advice like an asshole (a la "You really suck as <insert class here> because you're not using <insert action here> correctly. You're supposed to do it like <insert correct method here> scrub.") is counterproductive and only ends up causing the advice receiver to go on the defensive against you rather than the enemies they're supposed to be fighting. It's not being "direct" or "honest". Anyone can do both of those things without sounding like an elitist dick talking down to an inferior noob.
Hell, before I realized that "Green Leaf" players could be alts of other people, I was handing out random inventory items to any green leaf player I saw at random as a gesture of welcoming them to the game. I don't do it anymore because green leaf players could potentially be anyone if they create an alt (which bugs me quite a bit), but if I know a player is brand new to the game, I will go the extra mile with them to help them so they have a good experience with the game.
I help because helping other people makes me feel good. Unfortunately, being a dick usually comes far easier to a lot of people than being nice, so that's how many people act by default.