Communication is such an overloaded word. It means so many things that the real meaning often is defined by context and - ironically enough - when communication is sub-par, different people will infer different meanings from the same context. Worse yet, the person you're talking to may be in a very different context than you are, even in the very same conversation. (Say, "Your project is interesting, but today I care more about my new-born daughter")

So for the purposes of this post, communication is about reaching the same understanding about an idea. Not consensus on whether it's a good or a bad idea; just a shared understanding of what the idea is. I'm not an expert at this by any means; have no formal education (or otherwise, really), but I've been told I usually do a good job of conveying ideas; so here's a few ways I think about communication.

Communication as serialization and deserialization

If you've worked on software or telecommunications systems, you've most likely come across the concept of serialization and its inverse, deserialization. The idea is simple: you have a complex representation of some data with potential cross-references across the data structure, and you want to transfer this complex data over a medium that only supports transferring data sequentially, then turn it back into the same model. To give you a concrete example, you may have a list of cats and cat owners, and cat owners hold a reference to their cats, and cats hold a reference to their owners. Sometimes, the owners and the cats don't agree on which cats are owned by which cat owners. Sometimes, cats don't agree that people own cats, but insist it's the other way around; but I digress.

If you want to represent this data set as text, in which one character strictly follows another character, you need to come up with a way to represent the relations between cats and owners, and maybe even drop some information that only makes sense inside one system and not another. Human languages have tools for this, as do computer systems. Whatever tool is used to represent a complex idea as a sequence of characters, it's an instance of serialization.

When thinking about human-to-human communication, I often use the same mental model. I have a complex model of some idea; its various parts are interconnected with connections of varying kinds and strengths. When communicating this complex idea to another person, my goal is to manipulate the brain of the person on the receiving end into having the same, or at least a very similar, model of the idea.

How do we do this? We do this by serializing the idea into words, which the other person will then deserialize; that is, turn back into a similarly complex idea. The trick is of course to emit information in a sequence that allows for easy deserialization, and to ensure that at the end of deserialization the receiving party has a similar model to yours. Having an understanding or at least intuition for how the other person structures their thoughts helps this immensely.

In practice

There are a few structures that work well regardless of who's receiving the information. My favorite one is about minimizing the surprise each piece of information causes.

  • Structure your text (spoken or written, the same principle applies) in a way that each piece of information builds on the previous ones, towards a clear conclusion. If done right, the listener will expect your conclusion by the time you're just half-way there.
  • When referencing previous pieces of information, it pays to not go back very far; keep related pieces of information close together in the data stream.
  • Make sure that for each piece of information, everything required to understand it has already been provided.
  • If you expect a question to arise in the listener at a given point, try to handle it right there; it'll otherwise take up space in their cache, leaving less processing power for interpreting your words.

If you're into that kind of thing, you can think of this as axiomatic communication.

Communication as collaborative (distributed) sculpting

The previous part was about one-way communication; one party conveys some idea to another party. But of course the more interesting kind of communication is conversation, when you work together with someone in shaping an idea.

Imagine, if you will, the idea you're shaping together as a clay sculpture. You can poke holes in it, stretch it, remove parts, add clay in other parts. You have a sculpture representing the idea, as does your partner. The trick: you can never look at the sculpture of your partner. You can only ever talk about it, using for example the technique outlined above. Based on this conversation, you have some idea of what their sculpture looks like, just like they have some idea of what yours looks like. This goes back to the inherently lonely feeling of never being able to fully understand another person; but it makes for a very exciting exercise that, when done right, is extremely fulfilling.

So in this model, there are a couple of actions you can take (and your partner too), and no set order in which you can take these actions:

  • Tell your partner about some feature of your sculpture
  • Ask your partner about some feature of their sculpture
  • Tell your partner about some feature you think their sculpture has
  • Ask your partner what they imagine a particular feature of your sculpture looks like
  • Change your sculpture
  • Tell your partner about a change you made to your sculpture

A simplistic algorithm then goes like this:

  • Tell your partner about your current sculpture
  • Ask your partner about their sculpture
  • Talk about the sculptures and your models of each others sculptures until you're reasonably sure you have a sufficiently accurate model of each others sculptures
  • Make small changes to your sculpture, and communicate them
  • Watch for changes that don't make sense; if your partner removes clay that isn't there, it means your sculptures have diverged, and you need to go back to (near) the beginning.

This model has often helped me fix misunderstandings. Specifically, when the last step is not observed, confusion and frustration is inevitable. "What do you mean, you don't understand how I poke a hole at coordinates 1,5,3? What's there to not understand?" - "Man, there is NO CLAY there? How do you poke a hole?" And that's the point to realize that you need to go back and sync.

The art is in doing as little syncing as possible, while making as many and big changes as possible, while keeping the sculptures and the models of each others sculptures perfectly in sync. When that happens, it's what I imagine professional dancers feel during a dance routine.