Check for Mutual Understanding
Make sure your message has been interpreted the way you intended or that you've really understood another's message. Try paraphrasing—restating the other person's ideas in your own words. You can check right then and make any corrections to your understanding. Or try writing down what you believe they said, either as a requirement or as an acceptance test. You and the other person can check the written version to see if it shows you really are on the same page. If you're not, at least you'll have a chance to work toward mutual understanding before writing the code.
The gap between the "bad" road I expected and the "good" road I found myself driving on didn't mar my trip. But had I defined the road as "good" to someone else—the story may have been different. Mismatched definitions in software projects are rarely inconsequential. Whether you are sending or receiving the information, work to make sure that you and the person on the other side of the exchange walk away with the same understanding of what's expected or you may fall into an expectations gap.