Skip to content

Latest commit

 

History

History
60 lines (43 loc) · 3.33 KB

mindfulness.md

File metadata and controls

60 lines (43 loc) · 3.33 KB

Mindfulness in the art of software development

A holistic approach

Perhaps some of you have already heard from Jon Kabat-Zinn, creator of a stress reduction programm called MBSR or Thích Nhất Hạnh, a Zen monk heavily elaborating about nonviolent ways of life and truly conscious living. These two guys, as well as many others, make in their teachings, research and practise use of the contemporary term of mindfulness. Although this term and the giant world behind it has, at first sight, nothing to do with software development, it can nevertheless be applied to it, since mindful practices can be exercised and helpful on every occasion, day and night, the whole life long.

What do we understand by mindfulness?

Depending on the secular, spiritual or psycho-analytical view one can have on this topic, slightly various definitions of mindfulness are given in the literature. However mindful activities can be characterized by the following attributes:

  • They are truly intentional.
  • Their focus is directed to the present moment.
  • They do not judge or evaluate anything.

How can this help throughout our daily dev business?

Since software development consists not only of the pure and isolated act of writing source code itself, but covers in fact the whole lifecycle of a feature from its planning with stakeholders, refinement until iterative design and implementing phases, distractions to the involved developers can reach a level, where focussed work is no longer possible. Open plan offices and incidents which can occur at any time lead to further interferences and defocusing. Some mindfulness-based hints can relieve stress even in most demanding situations and help to stay healthy in our daily business:

  • Do one thing at a time. If pauses occur for example because Jira slows you done like so often, take a deep breath, become really aware of it and enjoy some seconds of your valuable time just for you and your current thougts.
  • Set up a little break after each commit. A workday is no monolithical block of software hacking. Give yourself time for a (good) coffee or relax your eyes while eye-chasing clouds in the sky.
  • If an incident turns up, stay calm. Ask your colleagues for help, nobody expects that you have to solve the puzzle on your own!
  • Do not switch tasks to often for no reason; and for sure asap is most probably no reason at all. Before focusing on a new task, just retain in the present moment, notice the world around you, let any thoughts silenty appear and pass by.
  • After a long and intense day, leave the work at work. After-work hours are waiting for you!

Epilogue

[…] meditation, more than anything else, is learning to live.

Bhante Gunaratana

A common mistake one could make with this mixture of hints is, to take them too serious. They are in no way dogmatic nor do they fit to all of us in the same way. Regard them as guidelines for your daily live. While this short article looks more or less on developers' needs, its principles are easily adoptable to all challenges we are facing in everyday life.