I recently collaborated with Chip Hayner of centresource and our very own Madeleine Perry on an echoditto labs post about communication as a developer. The post can be found here:

      http://echodittolabs.org/blog/2010/06/being-developer-communication-woes

      But, if you just want the short and simple, it can be summed up like this:

      Communicating on any level is vitally important. We developers, often introverted in demeanor, need to fight everything inside of us to get rid of the "island" mentality where we work in a little bubble and only emerge when we're done and need to hand the project to someone else. Instead, we need to stay in the middle of the communication stream -- talking to our teammates to ensure we don't spin our wheels for too long on a given problem; talking to our project managers to ensure they are updated on the status of the project and can be continually updating everyone's expectations; and talking to our clients (as needed) to ensure that their expectations are in line with internal expectations (regarding scope, timeline, budget, etc).