Thursday, April 28, 2011

Can Meditation improve programming skills ?

Positive influence of meditation in emotional well being, mental faculties and general mental/physical health is well known and well supported by research too. Therefore, one might think meditation will greatly help software engineers to develop their mental skills which are related to programming skills. However, as far as I know not much research is done on this subject yet and hence we don't have evidence yet to prove this hypothesis.

Looking at it from a different angle, games like Chess which require players to concentrate for long durations and help them become objective and develop their analytical thinking can also help people to improve their mental faculties. This is well acknowledged around the world and in many countries chess is already in the primary school curriculum, sometimes even as a mandatory subject!

Recently Word Chess Federation, FIDE has signed a interesting agreement with the World Meditation Academy. Among other things, FIDE will from now on offer scholarships for chess players to  attend meditation courses. Many other sports are also using mediation as a part of trainings, but this I think is the first time a sports governing body has so openly endorsed meditation as a tool which can help the game. In fact the connection between Chess and Meditation should not be a surprise. More about this piece of news can be found in here.

Now, I have personally seen good chess players also performing well as good software engineers (computer programmers). So, can there be a link between meditation and programming too. Will it be a good try for kids who like to become good computer programmers in future to pay some attention to meditation and chess or at least one of them ?

I personally think there (judging by my own personal experience all 3 fields and judging by what I have seen in others) is a good healthy relationship between these fields in terms of the mental skills needed to excel in those. While meditation can help in Chess and programming, will the reverse of that be true as well ?

If anyone have evidence or know about any research done on these, feel free to share it with us. This is one such place I know of where similar discussions are already happening.

PS : It seems like there are already initiatives to get programmers into meditation. Google for instance is conducting Mindfulness workshops at their campuses.

Mindfulness with Jon Kabat-Zinn
Cognitive Neuroscience of Mindfulness Meditation
How the Essence of Mindfulness Parallels the Nuts and Bolts of Science

Thanks Black_Irish at reddit for providing above links. More on this can be found at the discussions at reddit


  1. This certainly would make sense. I recently started meditating myself and I'm already seeing the positive effects on my mental health.

    On a side note, I would love to pick up programming, but I don't know which language to start with? Perhaps you could point me in the right direction?

    As for my goals - I would love to be able to develop an interactive website and perhaps even a desktop application.

    Cheers! :)

  2. Not certain of any research, but I'm a professional programmer and have a strong meditation practice. In my experience they are complementary. I was programming for a long time before I began meditating. I feel like the concentration skills developed from programming helped get my meditation practice started relatively easily.

    Also the ability to think in abstractions can be helpful for an advanced meditation practice. Being open about seeing your thoughts and sensations in a different light can lead to insights. "What if instead of me moving through the world, it moved around me? Like how 3d graphics are drawn. How would I know the difference?"

    Programmers will also know the scientific method quite well from debugging. A meditation practice involves a lot of "reality-testing" so the ability to state your assumptions clearly, then test them is also quite useful.

    In a way, meditation is a way to self-program. Once you learn the language of thoughts and sensations and get familiar with how karma operates you can self-program by changing your beliefs and living with the revised beliefs for a while. I find this works well as long as the new beliefs yield an improvement in well being. In a sense you are debugging and reprogramming your unconscious habitual behavior.

  3. Anonymous1, For a beginner, I would think Java or PHP would be the easiest to pick up with less hassle.

    Building a website will be a great idea, u could start with plain html, then some javascript and then onto PHP or JSP. That way you can grow step by step.

    Tx for sharing your thoughts.

    Anonymous2, Thanks a lot for charing your experiences.

    "In a way, meditation is a way to self-program. Once you learn the language of thoughts and sensations and get familiar with how karma operates you can self-program by changing your beliefs and living with the revised beliefs for a while."

    Agree with you there!

  4. Even though I have very little experience on programming, I can also say I have experience on all three fields discussed here.
    I agree with self programming because the brain is a neural network and anything we do will lead to training of this network. From the day we born we start to train this neural network and act according to what we have learned. When we become old we may feel that there are some short circuits and loose connections. I think meditation can be used to maintain our network healthier and slow the process of decaying the performance.
    There are many definitions to the word “Meditation”. However, it is not the same meaning to “Bhawana” that we used in Buddhism. “Bhawana” means development or improvement. It can be improvement on concentration, improvement on love and kindness, development of understanding about the reality, improvement of you awareness and lot more.
    So my point is Meditation (Bhawana) can be used to improve all the aspects of life and spiritual aspects beyond the life. It can be Chess, programming, driving, playing, talking, singing or anything. We have to choose the right meditation methods which suit our needs and ourselves.

  5. Gihan, Tx for the insightful comment.