Just curious. I believe being honest with your colleagues, clients and bosses is always a good idea. Have you ever been in a situation where the truth was NOT the best way to deal with a problem? Was there some times where slightly altering the truth was the right move?
Create templates to quickly answer FAQs or store snippets for re-use.
Depends on how you plan to be honest, and what you're being honest about.
A lot of "I'm just being honest" is way to excuse being a jerk. If your honesty can be constructive, then there's not a reason to hold back. If you're just going to be blunt, then you need to tread carefully.
Of course, it depends. Outright lying about a thing? Probably not the right call. But this conversation perhaps applies to areas where there's no such thing as absolute truth.
Questions where you might feel a way and act out of accordance with how you're feeling:
There's room in between lying and not thinking very carefully about how to communicate, and that's where you want to live. I don't always do a good job of navigating when to be blunt and when to be measured.
There are (at least) two levels to every conversation. There’s the informational content, and there’s the (often unspoken) emotional context/content. Sometimes being honest on one level can be unnecessarily hurtful on another. And in a professional setting, allowing too much emotion into the conversation can make it hard for a listener to really understand the factual information you’re trying to convey. Instead of coming away thinking, “I need to make sure the risk assessment for the project is solid,” they’ll think, “Damien is freaking out, and might need a day off this week to get some rest.”
The best book I’ve read on communication skills is How to Talk So Kids Will Listen, and How to Listen So Kids Will Talk. I use stuff I learned from that book literally every single day.
Honest is best, but only in combination with tact. It's on you to make sure you can truthfully communicate information without triggered negative emotions in the recipient. If they feel like you're being a jerk or questioning their abilities, whatever you say might as well be a lie because they won't accept it.
The only exception to this might be if someone literally can't handle the truth. Personal example: I once worked with a person senior to me who was having trouble figuring out how to get files on Dropbox. We had migrated from local network shares to Dropbox for various reasons. He wasn't well-versed in "the cloud" and had no interest in learning. He wasn't in a technical role, and it wouldn't have been worth his time to really understand what had changed. He reacted strongly and negatively to any kind of change in his familiar workflow. The solution was to change the icon for his Dropbox folder to the same icon as the old network share drive. He never complained about it again.
Hopefully you work with people who are open to learning and sharing information. The above scenario is not ideal.
Leaving the ethical questions aside and compulsive lying aside, we are talking about miscomunication as a means to achieve concrete goals.
And, given that you need a lot more skills to successfully manipulate someone with misscomunication than just to communicate, and "we" devs often barely manage to get people to understand anything AT ALL, honesty may be the best policy by virtue of beeing the only policy available to us.
Imho, it's often even the other way around: people can be tricked to answer dishonestly ("everything is OK") to avoid conflict, only to have the answer later used against them.
Even in "white lie" situations, honesty is often not as catastrophic as it seems.
E.g.: "are you actively looking for another gig/job?!" - if they ask, they probably already assume you are, so a "if so, why would you be surprised?" is not as catastrophic as it may seem.
From a purely pragmatic point of view, i have seldom encountered a situation in which dishonesty was the clearly superior tactic.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.