DEV Community

Cover image for Programming is Ruining My Life - What I'm Doing About It
Miles Watson
Miles Watson

Posted on • Edited on

Programming is Ruining My Life - What I'm Doing About It

Okay, the title might have been a slight exaggeration - programming has played a very beneficial role in both my academic and professional development. I have noticed recently, however, that programming has caused a significant decrease to my quality of life.

My Situation

Hi! My name's Miles, and I'm a teenager living in the UK. I've been programming in one way or another for over five years, but have recently been stepping up my workload (mostly due to my school computer science project, among other things). A typical school day over the past month has looked like:

  • wake up, breakfast
  • school (5 hours of lessons, most of lunch break programming)
  • homework / Advent Of Code until dinner
  • project work after dinner until bed The weekends are fairly similar, except with more homework / programming in the place of lessons.

This schedule has been fairly consistent for a few months now, and I wanted to share some of the issues I've had (as well as some of the methods I'm using to cope).

Issues

Eyesight

Over the past year or so, I have seen a noticeable decrease in my ability to discern details at distances further than a few metres. The impacts were most felt when I started school after lockdown, and had to move closer to the front of the classroom in order to make out questions.

I believe that this was caused long periods working at a computer, rather than simply due to genetics - mostly due to the fact that my eyesight felt quite a bit worse after my more "productive" days.

In addition to having developed short-sightedness, I have recently experienced some of the joys of eye strain. The discomfort persisted for a couple days, forcing me to take a break from computer work. It was after this particular event that I realised that something had to change.

Posture and Back Discomfort

Sitting at a computer has caused a slight discomfort in my lower back and rounded shoulders. Although minor, I assume this discomfort will only become worse as I age.

Lethargy

This one's quite simple - do you lack energy, or feel tired/weak/fatigued after small amounts of exercise? Being sedentary for long periods of time is not healthy, and can lead to both mental and physical illness. I personally noticed myself getting out of breath after flights of stairs, and feeling unfit caused a drop in my self-confidence.

Burnout and Irritability

After a long day of problem solving, I noticed that I felt both mentally and physically exhausted. This exhaustion destroyed my motivation for other hobbies, and made me more irritable (and therefore unsociable). Instead of spending my time reading, playing games, or talking with friends, I instead tried to numb my stress by endlessly scrolling through Reddit and other social media platforms until I fell asleep.

Tilting

Urban Dictionary

Although mostly used to describe a feeling in videogames, I find that the experience translates well to problem solving. Getting frustrated at a bug leads my mental clarity to decrease, causing a feedback loop that ends in me spending hours on a problem (often until late at night, causing irregular sleep patterns).

What I'm Doing About It

Here are some methods that I have found particularly helpful for dealing with and preventing the issues I've talked about:

20-20-20 Rule

I've recently started using the 20-20-20 rule. The rule says that, for every 20 minutes of computer work, you should focus on something 20 feet away for 20 seconds. I've found this to give good (albeit temporary) relief, although I usually do it for longer than 20 seconds.

Regular Breaks

Taking short breaks every hour or so has been very beneficial. During these breaks, I make an effort to move as much as possible - either a short walk outside, a few press-ups/pull-ups, or even just walking around the house.

Posture Exercises

I've been doing daily posture exercises to help fix my posture. So far, I've made noticeable progress.

Here are some good resources:

Gym Routine

You've probably heard this one a lot. There's a reason - it really works. Getting regular exercise at the gym (three days a week) has made me both fitter and happier;). It has the combined effect of:

  • Improving overall health
  • Providing a way to relax
  • Clearing my head
  • Increasing my self confidence

Important note: There is a tendency among gym-goers to focus on "push" actions. These can create a natural tension in the chest, leading to the shoulders being drawn in. Make sure to perform the posture exercises mentioned above, and balance your workout with exercises that target the back - think "pull" actions (deadlifts are also good for general posture, but can be dangerous if performed with bad technique).

Learning How to "Give Up"

Being able to recognise when I am "tilting", and having the self control to force myself to put a problem to the side has been very beneficial. I've found that clearing my head before trying again produces better results with less total time spent when compared to stubbornly grinding away at it.

This is probably the thing which I've found the hardest to do on this list - I have (like many other programmers) a natural tendency to obsess over problems until they are solved. Realising that putting a problem on hold is NOT admitting defeat was a major milestone in getting more consistent sleep and maintaining a better work/life balance.

Getting Kittens

I don't think this one needs much explanation :) Pets can be a great way to destress - just make sure they don't interrupt your Zoom calls (grrr).

Conclusion

As a developer, maintaining your physical and mental health is crucial to staying both productive and happy. Take frequent breaks, regularly exercise, and ensure that you are eating/drinking/sleeping well - your mind will thank you.

Have you been having any issues with burnout, work-life balance, or physical health? How have you been coping? Let me know in the comments below!

Footnote

If you enjoyed reading this, then consider dropping a like or following me:

I'm just starting out, so the support is greatly appreciated!

Disclaimer - I'm a (mostly) self-taught programmer, and I use my blog to share things that I've learnt on my journey to becoming a better developer. Because of this, I apologise in advance for any inaccuracies I might have made - criticism and corrections are welcome!

Top comments (6)

Collapse
 
martinhaeusler profile image
Martin Häusler

Programming is tough, on many levels. A couple of things I do to keep it manageable.

1) Don't let coding be the first OR last thing you do. This means: start your day with a breakfast, read the news, read your mail, do anything except sitting down to code. This helps to put things into perspective and avoids the "everything is horrible" downward spiral. Also, in the evening, don't go straight to bed after working on a program. It will haunt your sleep. Read a book, watch some youtube, just clear your mind, at least for 15 minutes.

2) Have a pet project. We've all been there - hunting a bug for thr entire day, or spending said day in meetings where you just try your best to manage expectations and keep scope limited to avoid total desaster. After a day like this when you feel super unproductive, take an hour and work on your pet project to remind yourself that programming can be FUN. Even when you're currently struggling, the next success will come.

3) Get a good monitor. Programming involves working with plain text a lot, which means you'll be reading a ton. Having a high resolution display worked wonders for me as the text us sharper and easier to read, reducing strain on the eyes. I'm personally using a pair of 4K monitors.

4) Invest in a good, ergonomic chair that fits you. Whatever you do, don't program with your notebook in your lap on the couch.

5) Exchange with your peers. 2020 has been rough on this one, but find local meetups and join! Talk to others and you'll find that nobody is perfect. In fact, you may be a lot better at your job than you thought.

6) Organize and manage requirements. Don't even push the first key until you know exactly what's being asked, and WHY it's requested. You are responsible for the "how", but first the "what" and "why" must be clear.

Collapse
 
mileswatson profile image
Miles Watson

Have you been having any issues with burnout, work-life balance, or physical health? How have you been coping?

Collapse
 
faraazahmad profile image
Syed Faraaz Ahmad

Yeah taking breaks and exercising are extremely important for programmers and I'm glad you're doing it

Collapse
 
tominflux profile image
Tom

Yoga &/or Tai Chi are perfect for both countering the problems of fixed posture and enhancing mental clarity.

Collapse
 
mileswatson profile image
Miles Watson

Thanks for your comment! It’s one of those things that everyone knows is important yet too few take seriously.

Collapse
 
darthwalsh profile image
Carl Walsh

Taking a break is healthy, but if you're seeing changes in your eyesight I'd try to make an appointment with a vision doctor. Don't take your eyes for granted!