&gt;In the happy&#x2F;social&#x2F;fun environment, this is terrible. The promoters of B might feel unhappy, harming team cohesion, and that could be more important than 10% lower latency.<p>I don&#x27;t think anyone competent wants to be on a team that makes bad technical decisions for the sake of people&#x27;s egos. If someone has hard evidence that choice A is better, but is unable to communicate that in a way that doesn&#x27;t harm team cohesion, then I&#x27;m inclined to say they must have pretty poor social skills.<p>All you have to say is something like &quot;I understand your reasons for expecting choice B to be better, but I&#x27;m afraid this evidence shows otherwise.&quot; instead of &quot;experiment failed, your idea is wrong, be smarter next time&quot;. Especially since, if you needed an experiment to work out the correct solution, then predicting the wrong outcome can&#x27;t have been particular stupid.<p>&gt;In this environment, &quot;you suck at SQL&quot; is just a factual statement that you can choose to remedy or not.<p>Maybe it&#x27;s &quot;factual&quot; in some sense, but aside from being unnecessarily harsh, it&#x27;s also pretty vague. A more useful statement is &quot;Your SQL experience doesn&#x27;t seem to be sufficient for this task&quot;. (EDIT: What I&#x27;d actually do first in this situation is ask them how confident they felt in SQL, giving them chance to save face by voicing the criticism themselves.) Of course ideally, you have an environment where this person felt comfortable saying &quot;I don&#x27;t have much SQL experience&quot; at the time they were given the task.<p>EDIT: Also, to be clear, I don&#x27;t think everyone has to talk like this. If two people in an office are happy to trash talk each other, that&#x27;s fine, just as long as they can change gears when talking to less confrontational people.