“The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination.” – Frederick P Brooks Jr., Mythical Man-Month

While Dr. Brooks was referring specifically to software engineering, I would say his quote applies pretty fairly to all of the work we do at Facebook. Whether marketing, legal, or design, we are all building our castles primarily through exertion of the imagination.

But we aren’t limited to our own imagination - we borrow and steal and build upon one another’s as well. From interns all the way to Mark Zuckerberg, I don’t know anyone at Facebook whose job doesn’t hinge upon their ability to acquire information.

If you think it is someone else’s job to keep you informed you may be right, but you can take that rightness to the grave for all the good it will do you. The only way to ensure success is to take responsibility for getting the information you need.

  1. Have a System. Don’t just consume information opportunistically or at random. Build a rigorous program of what channels you consume, at what frequency, and at what level of depth. For example, I read every email I receive every day. I read every post in a group I’m in every day. If I can’t make it through them all, then I know I need to be in fewer groups, on fewer email lists, or involved in less work.
  2. Maximize Signal to Noise Ratio. People are much better at adding channels to consume than they are about removing them, but both are equally important. There is too much information and not enough time to consume it all. Take time to assess your incoming channels, and ask yourself how likely each is to provide you with critical information. Prune channels aggressively when you find you are spending time but rarely getting value. I have a few groups which I scan on a weekly or monthly basis as time permits.
  3. Give Feedback. Do not be a passive consumer. If a channel could be more useful to you then speak up. The person communicating probably wants their effort to be as productive as possible, so they will likely welcome the feedback.
  4. Proactively Identify Gaps. Periodically map out all the people and projects your work depends on. Identify critical channels, and assess if you are getting regular information from those sources. If there aren’t any, lobby for them to be established. You’d be surprised how many people are happy to share more information but are unaware there is an interested audience.
  5. Pull the Thread. When you hear something that doesn’t match the mental model you have, grab ahold of that thread and see where it leads you. If you let that moment pass, you may be allowing yourself to proceed on the basis of outdated, sub-optimal information. On an average workday I probably write a dozen notes to myself when I hear something that surprises or interests me to make sure I follow up and learn more.
  6. Tell Your Story. This may not sound like a component of listening, but getting your story out is one of the best ways to make sure people inform you when they have relevant information. Good outbound communication is a huge part of getting good inbound communication.
  7. Register Callbacks. When you talk with another team, tell them explicitly the type of information you’d like to receive and establish a contract around it. I consider this step as critical to a successful partnership.
  8. Just fucking listen. Stop fighting information and hear what people are telling you. People aren’t going to say things as nicely as you want, or with as much data as you want, or with as much understanding as you would like. When you react emotionally or defensively to information, you have a responsibility to introspect on the reasons you are feeling triggered or insecure. Look beyond the rhetoric to find the kernel of valuable feedback to be explored.

By taking responsibility for your information flow, will start to see broader patterns emerge. This won’t just make your life easier, it will actually make you better at your job.