Skip to content

Stockholm Syndrome and Programming Languages

| thoughts |

Stockholm syndrome is a proposed condition or theory that tries to explain why hostages sometimes develop a psychological bond with their captors.

Today I’d like to talk about Stockholm syndrome related to programming languages.

We can apply the following phases (in terms of develper’s experience) to every programming language:

  1. I am learning it
  2. I use it every day
  3. I am occasional user or I know a bit
  4. I used it in the past

In general when we are learning something new it’s an excitement. We tend to like opening a new horizon. We prefer to reveal every new feature just because it’s “new”. But then we spend more and more time with a programming language and discover different language’s nuances, tricks, corner cases etc.

The most interesting that there is no perfect language. But software engineers tend to emotionally attanch to programming languages and see only positive side of it. I saw/see such behaviour in several communities.
When people spent so many time with beloved language they couldn’t see quirks and design issues. Their common reply to obvious criticism is: “it’s not Pythonic”, “it’s not Go-way” or “we are doing this in X-lang differently” and so on.

Another interesting sign is “us vs them”, “our community is better”.

P.S. generalization is bad, just switch on critical thinking ๐Ÿ˜‰

I noticed a distinct characteristic, the stockholm syndrome can be applied to software engineer:

  1. who spends majority of time with minimal number of programming languages and can’t compare with others languages
  2. who spent last several years (e.g. 4+ years) with only one language and convinced himself in language perfection

So he has a limited perspective (or bias) and honestly believe that “his” language is the best.

๐Ÿ’Š I healed this syndrome many years ago when decided to learn and use on daily basis many programming languages. Important is “to use on daily basis”, because only learning or occasional usage wasn’t helpful for me.