Work on at least one "pet" (personal) project. Being able to develop something you like is the most refreshing thing a programmer can do, in-my-not-so-humble-opinion.
To elaborate on Er Galvao, do a pet projec...but one that is fun. For me, this is always building a game. I am a hobbyist board game designer and I love to use my games as platforms for programming projects. It never feels like work.
Get regular sleep. Even if you have to tear yourself away sometimes. Notice when you feel compelled to sit in front of your computer, but aren't accomplishing anything.
Find something you can do, and like to do, regularly away from your desk. It should involve light exercise and limited focus. Swimming, gymnastics, dancing, and gardening come to mind.
Besides the obvious benefits of activity, these sorts of things can induce a daydreamy state - Theta brain waves. This level of consciousness is ideal for letting your thoughts coalesce. I often think of my best ideas, or suddenly discover the next thing I need to do to solve a problem while showering, or mowing the lawn.
I think the best way is to use your creativity for activities outside of programming or computers. Music, art, sports, dance, gardening, wood working.
It is a tough balance to strike due to the fact that many of us feel pressure to be productive at writing code. Some days just won't be productive, and your best bet is to rest your mind and prepare for tomorrow. The main cause of burnout is maintaining too fast a pace, and taking work a bit too seriously.
A healthy lifestyle can be minimized, but it must not be eliminated.
I've found that I need at least 4 hours of sleep to function the next day (2 REMs).
I'm most efficient when I take a short break to walk and stretch every 3-4 hours.
Eating healthy makes a huge difference to me. Often a vegetable-based meal will do more than a pot of coffee, especially for lunch.
If you're getting stuck, switch to a different task or take a walk to allow your brain some time to break out of the loop.
Make sure your workstation is configured to be ergonomically efficient. Herman Miller has a good amount of public content on the topic: hermanmiller.com/research/topics/e...
Get familiar with the warning signs of burnout in yourself and tackle them when they first appear. It's better to take time off to sleep, eat, workout, socialize, etc to allow you to recharge and start back over than it is to recover from total burnout.
Everyone is built different, so take my insight with a grain of salt.
Try to sleep a minimum amount of time each night.
When things are getting bad (really), try to get help in the manner that fits your needs, at that particular moment.
Discuss the situation with your belongings, and describe to them what is causing you the mountain of stress.
And most of all, believe in your strengths, no matter your boss or others can say!
Jokes aside, this is good advice. You don't even have to wait for it to go bad or really bad, the sooner you identify burnout and take care of it the shorter the episode.
The biggest tip I can give is to allow yourself to take time away from it. No matter was is causing the burnout it will be there when you come back to it. I can honestly say staying later or dwelling on an issue has never solved an issue faster than leaving it and coming back to it refreshed. One way I try to allow myself to shift focus is to have concurrent projects. This allows me to pick up something new and move it forward as I clear myself of the frustrations of the first project.
Another good tip is to reach out for help. In almost every case someone has been there and can provide guidance. There are all of people out there that are willing to help you just need to be open to asking for it.
Deal w/ anxiety + PTSD, things piled up and I was super overwhelmed around August and didn't touch any programming language for 3mos. Was honestly the best choice I could have made.
When I started up again, one of the first things I did was get on Twitter. 0 followers, wasn't aware of the world of Twitter-famous developers, just started tweeting out questions with hashtags relating to the topic I was struggling with. Lo and behold, people a lot smarter than me helped! I became engaged in conversations! I got a 🤘🏾 from @thepracticaldev
(<3)! I contributed to open source! I found a mentor!
Don't overload yourself, take a break if you need it, openly ask questions. All around great advice.
I also really like this advice. Yesterday I was feeling overwhelmed by having a lot on my plate, and I just reached out to a friend for some help getting it all together. I rarely do that, and I want to learn to be faster to ask for help.
Burnout seems interesting - I've never experienced it, and have been a programmer for a long time. Maybe it's from getting emotional about work? I've always believed that being dispassionate and objective keeps me on task. Organization helps, a todo list.
Don't do it obligatorily (for me, at least, that makes it a chore and it looms over me)
Avoid commitment (the idea of releasing an open source thing is exciting, but maintaining it over time is high cost, low appreciation -- even abuse, and doesn't stand to offer you much).
The simple obvious thing you would have done when you were brand new, that thing is actually a pretty good solution. If it's not good enough, introduce complexity as needed. But don't start with complexity, so much effort has been spent and so many simple easy projects turned into failures because people were trying to do it the "Right Way". But the right way has a scope, and that scope is typically medium to large projects. Don't start there, you'll spin your wheels and fail and burn out.
If you do those things, then you can have the option to get excited enough to do a small several hour to several day project, learn a lesson from it, and then set it aside to never be looked at again. Those projects are fun, and they don't cost you some permanent investment that is hard to get back.
Also, if you're doing this for work: Then know that estimates are bullshit, so don't commit to some estimate, and don't feel bad for blowing one (do reflect on why, though). And don't get attached to your code or some idea you suggested. You'll enjoy work so much more if you have better code that other people suggested, and if you don't feel obligated to double down on an opinion that as you think about it, is probably wrong.
I think you're particularly in danger of burnout if you're entirely in charge of your own schedule. If you are, I recommend scheduling regular off-times. There's always more work to do. Don't prioritize work over things that are important to your general well-being.
Been building web applications of all shapes and sizes since 1998 mostly with PHP and yelling at anyone who will listen about writing tests and using automation to make your life easier since 2005....
For the past 2 years I have been doing a 4-day workweek from Mon-Thur - 32 hours a week. One of my mentors put me onto the idea and asked me to write about it -> unicornfree.com/2014/guest-post-ho...
Oldest comments (47)
As somebody who has been struggling with burnout periodically over the last 7-8 months, I'd really like to see a discussion on this topic.
Work on at least one "pet" (personal) project. Being able to develop something you like is the most refreshing thing a programmer can do, in-my-not-so-humble-opinion.
To elaborate on Er Galvao, do a pet projec...but one that is fun. For me, this is always building a game. I am a hobbyist board game designer and I love to use my games as platforms for programming projects. It never feels like work.
pick something that is not computer related – for me is drawing (3 years of daily sketches for my kids)
Get regular sleep. Even if you have to tear yourself away sometimes. Notice when you feel compelled to sit in front of your computer, but aren't accomplishing anything.
Find something you can do, and like to do, regularly away from your desk. It should involve light exercise and limited focus. Swimming, gymnastics, dancing, and gardening come to mind.
Besides the obvious benefits of activity, these sorts of things can induce a daydreamy state - Theta brain waves. This level of consciousness is ideal for letting your thoughts coalesce. I often think of my best ideas, or suddenly discover the next thing I need to do to solve a problem while showering, or mowing the lawn.
I think the best way is to use your creativity for activities outside of programming or computers. Music, art, sports, dance, gardening, wood working.
It is a tough balance to strike due to the fact that many of us feel pressure to be productive at writing code. Some days just won't be productive, and your best bet is to rest your mind and prepare for tomorrow. The main cause of burnout is maintaining too fast a pace, and taking work a bit too seriously.
A healthy lifestyle can be minimized, but it must not be eliminated.
I've found that I need at least 4 hours of sleep to function the next day (2 REMs).
I'm most efficient when I take a short break to walk and stretch every 3-4 hours.
Eating healthy makes a huge difference to me. Often a vegetable-based meal will do more than a pot of coffee, especially for lunch.
If you're getting stuck, switch to a different task or take a walk to allow your brain some time to break out of the loop.
Make sure your workstation is configured to be ergonomically efficient. Herman Miller has a good amount of public content on the topic: hermanmiller.com/research/topics/e...
Get familiar with the warning signs of burnout in yourself and tackle them when they first appear. It's better to take time off to sleep, eat, workout, socialize, etc to allow you to recharge and start back over than it is to recover from total burnout.
Everyone is built different, so take my insight with a grain of salt.
Don't work too much, and take it easy.
Try to sleep a minimum amount of time each night.
When things are getting bad (really), try to get help in the manner that fits your needs, at that particular moment.
Discuss the situation with your belongings, and describe to them what is causing you the mountain of stress.
And most of all, believe in your strengths, no matter your boss or others can say!
I tried, but they didn't care.
Jokes aside, this is good advice. You don't even have to wait for it to go bad or really bad, the sooner you identify burnout and take care of it the shorter the episode.
The biggest tip I can give is to allow yourself to take time away from it. No matter was is causing the burnout it will be there when you come back to it. I can honestly say staying later or dwelling on an issue has never solved an issue faster than leaving it and coming back to it refreshed. One way I try to allow myself to shift focus is to have concurrent projects. This allows me to pick up something new and move it forward as I clear myself of the frustrations of the first project.
Another good tip is to reach out for help. In almost every case someone has been there and can provide guidance. There are all of people out there that are willing to help you just need to be open to asking for it.
+1 on both points
Deal w/ anxiety + PTSD, things piled up and I was super overwhelmed around August and didn't touch any programming language for 3mos. Was honestly the best choice I could have made.
When I started up again, one of the first things I did was get on Twitter. 0 followers, wasn't aware of the world of Twitter-famous developers, just started tweeting out questions with hashtags relating to the topic I was struggling with. Lo and behold, people a lot smarter than me helped! I became engaged in conversations! I got a 🤘🏾 from @thepracticaldev (<3)! I contributed to open source! I found a mentor!
Don't overload yourself, take a break if you need it, openly ask questions. All around great advice.
"I got a 🤘🏾 from @thepracticaldev (<3)!"
Aww ❤️
I also really like this advice. Yesterday I was feeling overwhelmed by having a lot on my plate, and I just reached out to a friend for some help getting it all together. I rarely do that, and I want to learn to be faster to ask for help.
Burnout seems interesting - I've never experienced it, and have been a programmer for a long time. Maybe it's from getting emotional about work? I've always believed that being dispassionate and objective keeps me on task. Organization helps, a todo list.
Don't do it obligatorily (for me, at least, that makes it a chore and it looms over me)
Avoid commitment (the idea of releasing an open source thing is exciting, but maintaining it over time is high cost, low appreciation -- even abuse, and doesn't stand to offer you much).
The simple obvious thing you would have done when you were brand new, that thing is actually a pretty good solution. If it's not good enough, introduce complexity as needed. But don't start with complexity, so much effort has been spent and so many simple easy projects turned into failures because people were trying to do it the "Right Way". But the right way has a scope, and that scope is typically medium to large projects. Don't start there, you'll spin your wheels and fail and burn out.
If you do those things, then you can have the option to get excited enough to do a small several hour to several day project, learn a lesson from it, and then set it aside to never be looked at again. Those projects are fun, and they don't cost you some permanent investment that is hard to get back.
Also, if you're doing this for work: Then know that estimates are bullshit, so don't commit to some estimate, and don't feel bad for blowing one (do reflect on why, though). And don't get attached to your code or some idea you suggested. You'll enjoy work so much more if you have better code that other people suggested, and if you don't feel obligated to double down on an opinion that as you think about it, is probably wrong.
Drink lots of water. Not coffee, not Red Bull, just plain water.
Take frequent breaks from work. A few minutes every hour is good.
Walk / run / jog / exercise everyday.
Talk to a human being face to face for a few minute. Do not leave touch with your human side.
Eat balanced food.
Pick a day to engage in other activities that you do not consider work to ensure that feel rested.
Aw man I have to talk to another human being? Dang I guess I'll burnout /jk
I think you're particularly in danger of burnout if you're entirely in charge of your own schedule. If you are, I recommend scheduling regular off-times. There's always more work to do. Don't prioritize work over things that are important to your general well-being.
For the past 2 years I have been doing a 4-day workweek from Mon-Thur - 32 hours a week. One of my mentors put me onto the idea and asked me to write about it -> unicornfree.com/2014/guest-post-ho...
Thanks for this 😊