By Brandon Chun June 16, 2017

Mind Training for Programmers

There’s a wealth of information out there about health and fitness, both in and out of the workplace. But I see a deficit in training programmers’ minds for greater focus and productivity.

Training the body is definitely important, don’t get me wrong. Training the mind, though, is paramount for productivity and living the life you want to live, but it’s underemphasized among programmers and society at large.

Why is mind training important? Because as Bruce Lee said in Enter the Dragon, “There is no opponent.” There are multiple interpretations, but this one is most applicable to us:

Accomplishing any endeavor, like losing weight, finishing a marathon, building a successful side business, or beating your opponent in a martial arts match, requires you to consistently follow a set plan, method, training, or strategy. “Trust the process,” right?

The obstacles in front of you, like losing 50 pounds of fat, finishing that marathon, building a business, and becoming a more productive programmer, are all tests to see how successfully you can create and adhere to a process for defeating them. They are ultimately tools to help you grow as a person.

What’s the most common reason for failing to follow your process? Yourself. Your nervousness, doubt, skepticism, negativity, laziness, impatience, and lack of focus. For example, countless people fail to stick to their diets long term because they didn’t feel like exercising one day, and one day snowballed into one week, one month, etc.

This makes your mind both your most trustworthy ally and your greatest enemy.

Effective mind training is accomplished through meditation and, believe it or not, video games. When done right, meditation can prevent distractions and give you internal validation, a sense of victory and triumph, from being productive. Video games can help you think faster, focus more, improve multitasking, and increase mental discipline.

Meditation

Meditation is a form of mind training meant to help you gain better control and understanding of your mind. With it, you’ll be able to focus and stay on task more effectively, overcome negative feelings, and avoid laziness and procrastination.

This is the secret to effective meditation. You have to view it as exerting control and dominance over yourself. Every meditation session is essentially a battle with your mind.

Right now, try to not think about anything. More than likely, this is difficult.

There are seemingly always thoughts racing through your mind. You may regularly have negative feelings like stress, anxiety, and anger. You may feel tired all the time. Our minds are normally chaotic, especially in our high-speed, instant gratification society.

When someone cuts you off in traffic, you may feel volcanic levels of rage. You know that it’s not helpful to get riled up like this, but you can’t help yourself. Or you might feel anxiety, and even have panic attacks, when talking to strangers.

Your goal with meditation is to silence this chaotic whirlwind of thoughts. You shouldn’t be relaxed, but you shouldn’t be tense either. You have to find and maintain that contradictory state of calm stillness and energetic engagement. This balance is where you’re at your most creative, productive, and efficient.

Productivity in all its forms hinges on your ability to focus. Productivity methods like The Pomodoro Technique (something that John himself advocates), listening to music, keeping your environment organized, etc. are all techniques to help you focus.

Meditation helps productivity because it generally involves blocking out thoughts for a given period of time. Regular meditation will refine your skill at blocking out unwanted thoughts and distractions, which will improve your ability to focus and stay on task.

If you adopt the mentality that meditation is a battle with your mind, and that your mind is both your most trustworthy ally and greatest enemy, every time you fail to focus is a battle against your mind that you lose.

You feel it, too. You feel that loss when you couldn’t debug the code because you were trolling social media. You feel defeated when you know that your code probably has flaws that’ll screw something up somewhere down the line.

But when you’re able to focus and be productive, when you finally debug the code after hours of unrelenting effort, when you finally get your fine-tuned code past the quality assurance (QA) tester after a dozen revisions and a lot of haggling, you feel it. You feel that sense of triumph and victory.

Meditation can help you focus so you will be productive and better able to create that sense of triumph and victory.

Step-by-Step Guide to Meditation

I’ve experienced far greater benefits from night meditation, so I prefer to meditate before going to bed.

Many people, including me, become sleepy during meditation at first, so it’s more beneficial to meditate before going to bed than in the morning right before starting your day. Try night meditation for a week, and if it doesn’t do anything for you, switch to mornings just after waking up.

Make your environment as quiet as possible. The raging thunderstorm of thoughts in your mind is already distracting, and you don’t want to add fuel to the fire. Use earplugs if necessary.

Sit in whatever position is most comfortable. You can sit in the classic legs-crossed on the ground position, but it’s not a requirement.

To begin, breathe in and tense up your entire body and mind for five seconds. Breathe out. Repeat this two more times.

Next, relax your body and mind, starting with the legs. Breathe in, breathe out, and relax your legs. At the same time, imagine a clenched fist becoming relaxed and opening up. Work your way up by doing the same thing with your stomach, chest, back, arms, neck, face, and finally your mind.

Starting from a state of high tension and gradually relaxing your body from the legs up makes relaxing your mind easier. Maintain this state of physical and mental stillness for as long as possible. If any thoughts enter your mind, force yourself to get back to this stillness. If you start feeling sleepy, force yourself to stay awake. Repeat the relaxing process from the legs up as many times as needed.

I recommend doing this for 10 to 20 minutes, five to seven nights a week.

But if meditation just doesn’t do it for you, there’s something else to consider. And if you’re anything like me and a lot of software developers, you’re already excited about it.

Video Games

Common wisdom says that playing video games is bad for you, right? They take time away from socializing and making friends, they kill your attention span, they hurt your eyes, they get you addicted to Mountain Dew and Red Bull, and they ruin your physical health.

Believe it or not, reading was the equivalent of video games decades ago. Common wisdom used to say that reading for enjoyment was bad for you. It didn’t teach you anything useful or train your mind. Books put elaborate stories and fantasies in your head that detract from your ability to perceive and live in reality, and they distract you from doing work.

Now, reading books is considered a great mental habit for the sustained attention it requires. Teachers and parents actively encourage kids to read books.

Video games have taken the place of books. People demonize the hell out of them, blaming them for all the issues and woes of kids and young people. Now, there’s scientific evidence that shows the benefits of video games and they’re being considered for various training and rehabilitation purposes.

Just like reading, playing video games is an effective way of training your mind. The mental benefits include faster reaction speed, improved focus and multitasking ability, and greater mental discipline—all beneficial for productivity.

Faster Reaction Speed

Imagine Call of Duty. To a large extent, the player with the faster reaction speed will outshoot the other players and is more likely to win.

Shooting games like Call of Duty, fighting games like Street Fighter, and real-time strategy games like StarCraft require fast reaction speed. Regularly playing these kinds of games with focused effort will increase reaction speed, just like regularly lifting weights with focused effort will increase your physical strength.

When driving, a faster reaction speed can be the difference between a narrowly avoided collision and a frontline story on the evening news. Have you ever almost dropped something, but managed to catch it in time? Imagine being able to do that all the time.

Do you want to be productive? Faster reaction speed is the mark of an overall faster thinking process. It means your mind works faster and more efficiently.

As a programmer, you’ll devote ample time to thinking. Thinking through bugs in the code. Thinking how to structure code. A faster, more efficient thought process will make you that much better at it.

Improved Focus and Multitasking Ability

There’s no definitive proof that video games destroy your attention span. It could be that fast-paced video games simply have more appeal for kids with attention difficulties; correlation doesn’t necessarily mean causation.

Also, a study by the University of Toronto reveals that playing first-person shooter video games creates a noticeable increase in visual attention span and decrease in distraction.

First person shooter players also show greater multitasking ability, which makes sense. You’re constantly bombarded with chaotic, constantly changing circumstances that require you to be able to abruptly switch to different tasks and keep track of multiple actions, people, and movements.

How is this useful for productivity, you ask?

Most productivity methods like The Pomodoro Technique advise focusing intently on a single task. This is due to a human limitation: effective multitasking is mostly a myth. To paraphrase Sun Tzu, he who tries to accomplish everything accomplishes nothing.

But if you could multitask even somewhat effectively, you’d reap massive benefits from doing so. Take meetings, for example. As a programmer, meetings are generally time and productivity destroyers. But, it’s also bad practice to ditch too many of them. And in a Scrum-style software development methodology, you actually do need to go to the meetings.

The productivity solution? Multitasking. Bring your laptop with you and do your work during the meeting. Just say that you want to take meeting notes for yourself if anyone tries to hassle you. With your refined multitasking skill, you’ll be able to pay attention to the meeting and get work done. Two birds with one stone!

Mental Discipline

First-person shooters are essentially simulated life-or-death gun battles. Yes, it’s just a game. But subconsciously, your mind can’t always tell the difference. The sheer volcanic rage commonly associated with getting pwn’d repeatedly in Call of Duty is, other than ego, a natural fight-or-flight instinct.

The biggest benefit of video games is that they allow you to be immersed in these tense, stressful situations safely, so you can train your mind without any risk of death or injury. You can develop a much greater level of mental discipline, self-control, and stress management. And this practice will carry over to other aspects of your life as a programmer.

Stress happens. As a programmer, you’re going to have to work with people you don’t get along with. Some of your coworkers will tie their egos to their jobs, and they’ll get combative whenever you or anyone else tries to give constructive criticism on their buggy, comment-less, jumbled mess of a code. QA testers will break your code and make you revise it over and over again, sometimes for legit reasons, sometimes just for shits and giggles.

These things will happen, and you can’t necessarily control that. But, you can control how you react in these situations. You know, from a logical and rational viewpoint, that starting an argument with a QA tester is not productive or helpful. You’re only antagonizing them, and they’ll be even harder to work with next time. But, you may not be able to help yourself.

Learning how to handle stress helps you maintain a calm, cool, and productive attitude in these kinds of situations.

Bonus: Improved Vision

This isn’t related to mind training, but it is a profound benefit of video games that I wanted to include. Studies reveal that playing shooting games will improve vision. The benefits to vision are so potent, shooter games are being considered for rehabilitation for the visually impaired.

This makes sense. A first-person shooter game like Call of Duty requires you to be able to quickly spot enemy players, essentially moving shapes on a screen. Thanks to the grayish background of the levels and the usually dull colors of the player characters’ appearances, your eyes have to work at it. As a programmer, you sit in front of a computer screen for most of your time, which can be damaging to your eyes. The improved vision from video games can effectively compensate for this vision deterioration.

Programmer’s Guide for Maximizing Video Games Benefits

Benefiting from video games is tricky. You need to go in with the right mindset and select the right kinds of games. Otherwise, you’ll waste your time, neglect other vital aspects of your life, produce a net loss for yourself, and overall just shoot yourself in the foot.

Stick mainly to first- and third-person shooters. They give you the best bang for your buck in regard to mind training: faster reaction speed, improved focus/multitasking, mental discipline, and improved vision. Fighting games are a solid alternative.

First, don’t play video games for enjoyment or ego. Your goal is to train your mind. Enjoyment is an unintended consequence. Ego is one of the reasons for the volcanic rage a lot of gamers exhibit during intense matches.

Whenever your ego rage is getting the better of you, stop playing for an hour and take a walk outside to clear your head.

Second, focus on multiplayer. The AI enemies you face in single-player can never match up to the adaptability and unpredictability of other real players. After replaying a level a few times, you’ll know when and where the AI enemies will spawn and how they’ll react to you. Every real player, from the first-time noob to the seasoned pro, offers different challenges.

Instead of mindlessly drooling in front of the screen, aim to win every match. In team-based matches, work to maintain the highest Kill/Death ratio on your team.

For frequency, I recommend playing two to three sessions a week of only 30 to 60 minutes each and one long, marathon session of several hours. The best time to play is on a weekend evening or whenever you don’t have a pressing obligation the next day. The evening is often when the greatest number of players are on and playing multiplayer. During the long session, take a 10-minute break every one to two hours to let your eyes and hands rest.

Any kind of exercise, whether for the body or mind, needs to be done with intensity and consistency, but it also shouldn’t take away too much time from other vital areas of your life. Start from this baseline frequency, then you can adjust the times and frequencies to your personal preferences.

Your mind is generally able to handle more than your body, so you stand to benefit more from a long, marathon gaming session as opposed to an actual physical marathon.

Final Words

The way I see it, your body is a car and your mind is the driver. You can have a suped-up Lamborghini with less than a hundred miles on the engine, but a 16-year-old driving for the first time in their life isn’t going to do much with it. On the other hand, Jason Bourne was able to successfully use a MINI in a car chase.

Meditation is a useful and underrated tool for gaining control over your mind. It doesn’t take a lot of time, but it provides great benefits for productivity and every aspect of your life.

Contrary to popular opinion, video games can be a great tool for mind training if the right games are selected and if it’s done with the right mindset.

Now go get training!

About the author

    Brandon Chun

    Brandon Chun is a mechanical engineer, but has a coding background in C++ and C. He's also completed Free Code Camp’s Front End Development program.