Monday, October 22, 2018

Where the Magic Happens

A picture of a brain with three shapes and two operators imposed: square + circle --> pentagon

Magical thinking is the fallacious assignment of a causal relationship between events. 

It's never magic.

Repeat after me.

"It's never magic. It's never magic. It's never magic."

All too often, I meet people who treat a library, service, or (sometimes) even their own code as though it behaves magically.

Sometimes the magical thinking is bald-faced. I recall a case of someone saying this (paraphrased):
"++ doesn't work, some of the time."
What are the odds of that? Obviously, the person involved was engaged in magical thinking.

Sometimes it's a little more subtle.

For instance, people who don't understand how inheritance-based polymorphism work will sometimes treat people who do like they are witches and warlocks. Not all the time nor even most of the time. Just some of the time.

Depending on the temperament of the magical-thinker in question, the response can range from reverence to outrage.

I'm sure Arthur C. Clarke would be really proud to find out his third law could be applied to virtual method calls.

Whenever someone engages in magical thinking, they rob themselves of an opportunity to really learn what's happening.

We've been able to conclusively observe magic in one place: our imaginations. That's where the magic happens and, ostensibly, nowhere else.

If you don't understand something, don't engage in magical thinking. Take it as an opportunity to extend your model of the universe. Learn, grow, and gain power in so doing.

It is never magic.