In development (as opposed to production) I personally fight against any commitment if it comprises the "what" as well as the "when".
You fix the date of the next release and provide me with a prioritized list of bug fixes and features to work on? Nice, let me start to work!
You think that a specific new feature could improve our sales and you let me drop anything else and call you back as soon as I have any news? Wonderful, I'm already analysing the issue in my head!
Anything else, and I'll let you know that your dreams are not likely to come true.
[1]: https://en.wikipedia.org/wiki/Project_management_triangle
That's sales guy talking.
From my point of view, he is not a customer! A customer is someone who buys the product we currently have ready to sell, or someone who pays for customization.
2) Except I have seen multiple times when customers paid for customization, then jumped ship (and demanded a refund) because that same customization took too long.
There is a reason that product owners need to be able to say, "No" and be good at managing expectations. Otherwise they end up with an unmanageable backlog, broken promises, and sometimes will scapegoat the engineering team. That isn't too say over promising doesn't happen on the engineering side of the equation. But the product owner is the individual ultimately responsible for all feature work promised.
2) A lot of developers really hate committing to any kind of estimate because they're really just not that good at estimating for a variety of reasons and getting stuck in a commitment that turns out to be unrealistic really sucks.
3) In my experience a good portion of orgs really are bad at business-engineering interactions and end up in adversarial relationships like you're talking about where engineering is seen as "those guys that refuse to commit to any deadline and suck at communicating status I can plan around" and the business owners are "those guys who don't understand what they're asking for and are constantly trying to micromanage to get blood from a stone". Also in my experience, neither side is entirely innocent in these situations.