This week's book giveaway is in the OCPJP forum. We're giving away four copies of OCA/OCP Java SE 7 Programmer I & II Study Guide and have Kathy Sierra & Bert Bates on-line! See this thread for details.
Best way to learn is by observing others. For example, having role models.
You can try a number of things to improve your communications skills
1. I improved a lot by blogging
2. Become a good listener. Try to see others' point of view.
3. Have role models like your immediate boss or manager and see how they are communicating and learn from them.
4. Handle criticisms well.
See if there is a Toastmasters.org club near where you live or work. Dues are really inexpensive. And the whole focus is on communication and feedback. Forcing you to become better at your soft skills.