By communication I'm refering to a much broader concept than a text field, a help message or the use of buttons and windows. I'm talking about making the interface speak for itself without the need of explicit hints.
Some time ago I read an interview with Shigeru Miyamoto, father of the Super Mario series and industry-acclaimed videogame designer. In it, Miyamoto-Sensei comments on the designs of the characters in Super Mario Bros. It is not a coincidence that many enemies had spikes on their backs. The player had to know that running against them was clearly not a good choice. Two decades later we might find it very obvious, but achieving that level of communication is more difficult than it looks.
In the words of Jonathan Ive, Senior Vice President of Industrial Design at Apple Inc. and father of the iPod, "An indicator has a value if it's indicating something, but if it's not indicating something it shouldn't be there", in reference to the hibernation indicators included in the new MacBooks.
And we can apply these same principles to User Interface design. We should minimise , or completely erradicate, the use of help messages and introductory texts, in favor of more self-explainatory interfaces. The user should be able to understand the function of every element on screen instantly, therefore easing the learning curve.
So please remember, try to keep your interfaces as clean and simple as possible. If you can't find the way, you can always add spikes to it!