The other day I overheard the conversation a developer was having with a salesperson. It went something like this:
SP: Hey dev, are you all set for the meeting we're attending in 10 minutes
DEV: Yes, and the meeting starts in 26 minutes
SP: OK, whatever, see you there
That interaction reminded me of how differently engineers think, talk and, in general, communicate.
Engineers can be a persnickety lot. They prefer a certain exactness of expression. It's more than mean what you say, say what you mean. It's mean exactly what you say, say exactly what you mean. Not a very forgiving approach - especially in the foggy early morning hours, prior to imbibing your favorite pick-me-up.
Why is such preciseness celebrated by those who stare deeply into the Matrix during the majority of their waking hours?
I think one possible explanation is that the entity engineers speak most frequently to (their machines) behaves in the very same fashion. Day in and day out engineers converse in their language of choice (e.g. Python, Ruby, Java, Node, C) with their good friend the computer (hereafter known as Lappy Top). If during the course of that conversation with Lappy Top the engineer says the wrong thing or has bad logic, Lappy has no compunction, shows no attempt at understanding or interpreting what the engineer meant to say. If what the engineer said was wrong - well, it was wrong. It's a 1 or a 0 and there is no in between. Lappy lets you know that you are a simpleton.
It would be interesting to see the effects on engineers social skills if modern compilers / interpreters could make learned guesses at what an engineer was trying to say when the engineer misspoke and could be more forgiving. Perhaps Lappy's flexibility and understanding would influence the engineer's social behavior.
Until then - the meeting starts in 26 minutes...