A lot of great ideas come from the developers in the trenches. Developers who are not in a position to implement their ideas. Many of them are surrounded by people who can help make their good idea a reality or people who have to approve their idea before they can implement it. Part of sharing that idea is conveying it in a receptive manner. While I know many fantastic developers with wonderful ideas (developers better than myself with better ideas) many of them aren't able to convey those ideas well. I just finished reading the short book "How to Get Your Point Across in 30 Seconds or Less" which tackles this topic.
A lot of the books I've read on this topic are hard to read. They are dry and don't speak to me — unable to make their point without me getting bored. This book kept my attention, was short, and to the point. In addition to that the book is inexpensive to buy, available in libraries all over, available in electronic forms, and there is even an audio book.
The one word of warning I will say is the book is a couple decades old. While I believe the point of the book still holds true now, some of the references will seem dated. For example, the book makes reference to answering machines. I had forgotten those even existed.
I'm going to keep this book as a reference on my bookshelf. A book I can skim for reminders before I go to conference, go to speak somewhere, am going to spend time with clients, or come across one of those killer ideas I want to sell others on.