I’ll make this short and brief. 🙂
What’s the major difference between difficult customers and 4-year olds? Don’t chop my head off just yet as there’s some truth in this rambling mushing. But aren’t they virtually identical in most aspects aside from customers pay you, and of course, the major age difference.
And to that note, maybe we should move over to what major similarity the two have with each other. And that is — at least to my point of view at this very moment I write this — the way you communicate with either.
When your child wants candy in the morning, you can’t simply say: NO. Instead, you have to say something like…. Yes, you can have candy, but only after you’ve eaten your breakfast ok? Then your kid smiles, eats his healthy breakfast, and there goes the candy afterwards.
And that communication skills is also very valuable in dealing with difficult customers. In that you have to be able to say NO in a positive and very clear “…what’s in it for you if you take my advice” manner. For example: “Yes, we can definitely develop that module for you, but would you rather aim at releasing your software with the major functionalities in place and less chance of hitting bugs, rather than us making code for a new module that may just cause new and unforeseen bugs?”
That actually was a NO, sugarcoated with a YES, and why so, hence leading your customers to listen first, then understand, then somehow, be guided towards a common goal of (1) completing the project sooner, (2) avoiding as many bugs as possible, (3) minimizing costs due to changelogs, (4) clearly drawing a line between a delivered product, vs a never-ending growth of modules and changelogs.
At the end of the day, your customer will “eat their healthy breakfast”… and at least after that, then they can have ALL THE CANDY they want! 🙂