DEV Community

Ben Overmyer
Ben Overmyer

Posted on

Physical and Mental Conditioning for Developers

We tend to focus too much on developing the skills for our jobs. We neglect a very important component of our performance: ourselves!

Physical and mental health both determine the ceiling for your job performance. While you might be adept at writing device driver software, your ability to execute on that particular skill hinges on whether your mind and body will let you. If you're mentally and physically exhausted, you are far more likely to make mistakes or take longer to do a particular task.

Toward that end, you should include both physical and mental training in your daily life. Neither is easy, but both are necessary. Diet is also extremely important, but it's outside the scope of this post.

There is a lot of great reading available on this subject. I'll list a handful of bullet points for you to look into further.

Note: I am not a doctor, nor a psychologist. The following is based on my own experiences and research. Consult a physician before attempting any drastic changes in exercise.

Physical Training

Goals

  • Maintain flexibility
  • Maintain good posture
  • Develop pushing strength
  • Develop pulling strength
  • Maintain moving stamina

Points to Iterate On

The following are specific ways to work on the above goals.

  • Strength training: Practice lifting and pulling heavy things. Your body counts as a heavy thing.
  • Endurance training: Practice moving around quickly enough to get your heart rate up for longer periods of time than you're used to.
  • Flexibility training: Practice stretching whenever possible and practical. Yoga is good for this. Acroyoga is better.
  • Regular movement: Practice getting up and moving around for at least five minutes every hour.

Mental Training

Goals

  • Choose and maintain a positive attitude
  • Manage expectations effectively
  • Use positive self-talk
  • Maintain concentration
  • Set realistic goals
  • Manage anxiety effectively
  • Manage emotions effectively

Points to Iterate On

The following are areas to iterate on that will assist in developing the above skills.

  • Goal-setting: Practice setting goals of varying complexity and time constraints, recording your results, and then altering future goal criteria based on the outcome.
  • Self-talk: Whenever you catch yourself thinking negatively about yourself, practice inverting that thought into a positive version.
  • Breathing: Practice being both aware of your breathing and controlling it.
  • Visualization: Practice imagining a positive future state of what you're working on.
  • Routines: Practice setting and maintaining routines, particularly in the morning and evening.
  • Mindfulness: Whenever possible, practice mindful awareness of yourself and your surroundings. Avoid multitasking.

Oldest comments (0)