I'll add (after reading some responses here), I'm not saying that someone should always be honest, I was just saying it's possible to be frank with someone without being a douche
For example, instead of telling someone "this isn't good", tell them "use this technique instead" or "it's better to do it this way because X"
I get that there are some people who'll take offense to everything. Those types have to be managed differently and are a headache to deal with. But if you aren't a dick and have a paper trail, there's nothing to worry about