I’m going to divert from my normal discussions of programming to talk about something I think is very important and still somewhat related to programming.

You may be the best programmer in the world, but if you can’t communicate how to use your code, no one will want to.

This obviously wasn’t said by Carl Sagan, it was said by me to my students, often multiple times. This idea can also easily be applied to any field using the following simplified version.

Communicate clearly or no one will communicate with you.

This idea is even more important in intellectual fields like science or computers.

Now you may say, “I read the title and this post is suppose to be about Carl Sagan. He’s awesome! When are you going to talk about him?“.

Trust me, I will. But first I want to talk about interaction.

Honestly, trust me. This all comes together in the end.


In my experience the average person tends to trust other average people, who use equal amounts of emotion and logic to make decisions and solve problems.

On the other hand scientists and computer engineers tend to trust logic and not emotion. If something just feels right that’s not good enough: the numbers have to back it up. When interacting with science or computers this is great, but when interacting with people this is bad.

The above probably seems obvious, but to many scientists and computer engineers it’s not. We usually see people as problems to be solved rather than an interactions to enjoy.

This becomes apparent when interacting with some scientists and computer engineers by asking them questions.

Several computer engineers I have worked with understand a subject so well and are unable to explain it. They will use terms that are very specific and will talk about concepts they think are obvious, but of course aren’t. When asked to explain concepts in other terms they find it tedious to reduce their complex explanation down to a simple one. Often questions of this nature are also met with ridicule.

Now, I’m a smart person and I have built lots of software for many years, some for billion dollar multinational companies. However, the other day someone actually laughed to my face and said “I guess we have to go back to middle school computer class for you.” when I asked what a vague term they used to describe a feature meant in terms of the project.

The vague term was “enterprise wide solution” by the way. After he left the room we all agreed no one was completely sure what this term meant as it related to our application.

I wasn’t phased by this comment because this sort of interaction happens often.

Unfortunately, this type of interaction is non collaborative. It not only deters new people from entering a field but annoys and confuses people within it.

Ever been in a meeting where no one wants to ask questions because no one wants to be made fun of for not understanding? Ever notice how everyone leaves and then complains they didn’t understand?

So, How Does This Relate to Carl Sagan?

Carl Sagan was one of the top scientists in his field. He worked on discovering the high surface temperatures of Venus, contributed to the understanding of seasonal changes on Mars, and helped on numerous NASA missions.

However Carl Sagan is probably best know as the guy who made Cosmos.

I’m a pretty young guy. I wasn’t alive to watch the show be aired on television. I discovered it on YouTube in my early 20s and since then it has been one of my favorite series of all time.

The main reason I love it is because it’s a perfect example of the exact skills I find most important: the ability to explain a concept without making someone feel dumb for not knowing.

Take a look at this video and see if you understand what I mean.

That question is certainly not the most complicated, but it was something that boy wanted to know. Did Carl Sagan laugh while saying “Of course it is you moron!”. No he didn’t. He remained respecful and understood that just because someone asks a question doesn’t mean they are dumb. It often means the opposite. They are smart and want to understand things.

I will often ask questions I know the answer to just because I want another point of view on it. Who knows, I might be wrong.

My point is you should never assume someone understands you nor should you put the responsibility of understand on the other person. If you want to impart your thoughts into their head you have to pick your words carefully and if the person still doesn’t understand, you need to answer their questions respectfully until they do.

Carl Sagan was a master of this. A master of understanding a subject, being respectful while explaining, and communicating in a way that made people feel good for asking.