Dealing with distraction for those of us who live with AD(H)D is a constant struggle, and can be especially difficult for those of us who must daily solve large, complex problems. This post describes what it is like to be a programmer with ADD and some strategies I've developed to help make myself more effective.
To solve complex problems by programmatic means, one needs to be able to focus. To find the best solution to any problem, one needs to be able to focus. In short, an effective worker is one who can focus.
For those of us who live with the difficulties of AD(H)D every day, this fact - this dependence upon a kind of mental discipline - is glaringly obvious. Our constant struggle to focus means we are not as efficient as our non-ADD peers when asked to complete a single task. We get distracted by the sound of the wind, the tap of a colleague's fingers on his desk, or the sound of people talking walking past our window. The slightest noise or change (by a separate entity) in the visual landscape will cause us to loose our train of thought nearly immediately.
For those of you who can focus relatively easily in distracting environments, I offer this metaphor to help you understand a bit more of how it is it live with such an affliction. Imagine you are swimming in a lake with a basketball. The depth at which you swim is your level of concentration - the deeper you swim, the more focused you are and thus the less susceptible to distraction you are. Imagine further that a day's worth of work is like swimming the length of the lake, and your goal is to swim as deeply as possible for as far as possible. The problem is that you have to do all this while holding onto the fully-inflated basketball. The longer you swim underwater, the harder it is to keep the ball (and yourself) deep underwater. During your swim from one end of the lake to the other, you are pulled up to the surface very frequently, only able to keep the ball underground for a short while at a time. This is what it's like to live and work with ADD.
The inability to focus on a given problem for more than a few minutes at a time causes severe problems for all employees with ADD, but especially for developers who have to delve into a problem, process it, and produce a solution quickly and efficiently.
The effectiveness of various solutions will vary person to person, but these helped me:
- Find a quiet, solitary place to work (avoid working in a place where people socialize)
- Turn off all notifications when working (fetch updates at will instead)
- Play calm, simple music without words, or work in a place where the background noise doesn't change
- Keep the room cool in temperature
- Work on one thing at a time and work until it is completed
- Plan out finer details for a large project
- Get enough sleep
- Medicate with some sort of stimulant
- Keep your workspace empty of clutter and visual distraction
- Keep snacks by your desk (like almonds or dried fruits) to keep your energy up throughout the day
- Exercise to exhaustion at least every other day
- Consciously avoid doing several things at once, like listening to a YouTube Lecture and checking your Twitter feed on your phone at the same time
- Avoid depressants like alcohol
- Write or engage in a creative, exciting activity which asks for your full concentration
Following all of these with ADD can even be a challenge, but limiting the frequency of distracting stimuli goes a long way to achieving focus and increasing your productivity.