Girl with laptop
Social

What Is Like To Be A Programmer With Mental Illnesses

For most of my life I’ve been battling with 2 things: bugs in code and mental illnesses. The former can be fixed given enough time and patience, the latter may never be so.

It is not uncommon being a programmer with mental health issues. Actually, most programmers think are somewhat depressed or that science supports the correlation between spending days of your life coding and mental issues. Albeit some think otherwise, I’m not going to discuss about it. More importantly is to explain to the general public what is exactly like to try to create software while suffering from mental illnesses; in my case, depression and ADHD.

First of all, I constantly feel like I am doing 15% of what I could. Every day. Even in the good days, I can barely do what I consider the minimum for my intelligence and time spent. Perhaps I overestimate either or both but the feeling prevents me to actually enjoy or think as I did enough for the day. Which clearly helps in increasing the depression.

I give up too easily. It’s not like I don’t try, which is something often observer blame me to, I can’t go through the hardiness of learning and applying generous amounts of mental energies which are needed to code and fight off the ADHD. When I don’t get immediate, positive results, that’s when the depression kicks in and giving up becomes automatic.

Most of my days when I code go like this:

  • I have an idea to write something or fix a bug
  • I rush into implementing it. Key word here is rush as otherwise I believe the idea or fix may slip, forever
  • I find issues in the idea (which is perfectly normal for any developer)
  • I look for/think about solutions. That means furiously pressing the right keys on the keyboard in order to find the correct solution
  • If I don’t find any within 5 minutes, the desire to look away and try something else or another day grows
  • Perhaps at this point I found a way to go on with the code but it nonetheless feels like I’m dumb for not having thought of it before or knewn it beforehand
  • ADHD is attacking me now, luring me into doing something else, anything else, be it kittens videos or browsing for the news or opening Twitter
  • The fights against ADHD starts and the energies are lessening
  • Next issue or bug I find is usually when I stop, wonder what am I good at, if anything, getting angry at myself for not being “smart enough” and despairing to ever succeed
  • Depression ensues and that’s, unsurprisingly, the end of the coding session

Simply too much thinking about the code, keeping at bay the thought of wasting time as I’m not seeing any progress and fighting against distractions makes me give up each time. Only a bit later or earlier, depending on how many energies I have or the difficulty of the problems I’m facing that day.

What if I did something else? Perhaps I’d make more progress. That’s an ever-occurring thought while coding; I often try to, only finding another block, which restarts the whole process and I look for something else again. Usually after 3-4 times switching objectives, I give up for the day. The thought of trying again makes me irritable and angry at myself until the moment I go to sleep, the ultimate sign of having given up progressing for the day. Next morning I’m usually not in the mood to code, nor I feel encouraged to do so by the previous day failure.

I take frequent breaks. I mean, like every 3 minutes I open a non-coding related website or I get up and have a brief walk. I can’t stay focused for longer than 5 minutes, at most. Unless I am making progresses, which is usually only at the beginning of a project when lots of parts are easy to write and issues come up only later. That’s the best part, where I stay put for hours, in the very best days, and the only ones when I feel really productive. Any other time, I distract myself to not feel the pain of failure and the stress of avoiding it.

It may be not a failure, I know. Logically I do. Yet the feelings are not logical, clearly. I am sure I would not get these feelings if I hadn’t ADHD: without it I would have a sense of having tried hard at least, “giving it all”, and albeit failing, it would assuage my regrets. I’d sleep better, as to say.

Therefore, ADHD is the main culprit. Depression is just the ultimate result of failing again and again.

Yes, I do learn things. It’s not like my efforts go wasted all the time. I’m intelligent enough, and in this I’m quoting most people who know me and by no means making any self-claimg of greatness, to improve even if I give 15% of my intellect to the task at hand. Yet, it’s a waste of time, can’t stop feeling like this.

I wish someday to be able to live one week, one week only, as a programmer without ADHD and depression. I would like to know how it is “on the brighter side”, how it is like to have the mind of those programmers that crunch code all day long and have a dozen side-project they regularly return to. I would like to experience this just to have a way to tell myself how good I am to keep trying despite my mental limitations. That would make returning to my normal self much more bearable.

Main photo credit to Filip Bunkens

Neapolitan programmer, traveller and metalhead, co-author of PaperSounds blog.

3 Comments

  • Colin Michaels

    First off, great article. I feel like you are inside my head with the way you described what you go through daily. I struggle with very similar issues and often have the same thoughts. I do my best to stay focused I have been trying meditation which is helping some but know I have a long way to go. It was nice to know though that I’m not the only one feeling this way. We are all our own worst enemies and critics and it’s hard to turn off that inner voice. But you have to continue in your efforts because it is worth it. I got into coding because I really do enjoy it. I love the feeling when you get something you have been working on for days on end to finally work and work how you originally intended it. Unfortunately with this condition that happens less and less. No matter how well I make something it’s never good enough or as good as I wanted it to be. But learning to get over that and realizing it’s not anything easy. It takes focus and thought. And it can be done even with the mental distractions. If every day you can stay focused a minute or two longer eventually you will start to see results. Just keep going and never give up. Thanks again for sharing.

    • Gianluca Fiore

      Thank you Colin, I’m so glad that my article resonated with somebody 🙂 I am meditating too and find it is the best way so far to overcome those distractions that our minds produce and detract so much from our work, study and life in general. It is a very long path but I am fine with it, meditation is a practice that should be kept for the whole life and results will be for the long run. Eventually, I will get to a point where I can focus as much as anybody else, even if it will take years. And I’m surely not giving up programming, I have just completed 2 projects I had been working for months! Keep going, always 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *