I went through this in the late 1990s. I was completely burned out. I dreaded going to work each day. At work, I could barely do my job. I struggled to perform any task given to me.
I procrastinated. I tried to find any excuse not to work. I took long coffee breaks and long lunches. I came in late and left work early (around 5:00 — most programmers were expected to work late).
I feared losing my job. I feared that I would never get another job.
I felt tired and depressed. I didn’t want to look at programming ever again.
I finally decided to retire early (at age 46).
For the next several years, I didn’t do any programming. Then I decided to gradually ease my way back in. I did pro bono IT work for a psychiatrist acquaintance. One of the technologies I got into was Smalltalk…
I fell in love with the language. It was such a clean and fresh experience! I recognized the amazing potential of this technology.
A few years later, I decided to become a Smalltalk ambassador. I set up a nonprofit for Smalltalk promotion. I wrote hundreds of articles and blog posts about Smalltalk.
This language saved me. It restored my faith in programming again. Now, I have energy and enthusiasm for writing software. Smalltalk is my favoured tool, but I also use Python and Go from time to time.
Life is good.
What caused the burnout? It was the confluence of many things:
The end result is stress. Overbearing stress.
The lesson is: if you feel burned out, then take some time off (perhaps a few years). Do something else.
Then gradually ease your way back into programming, if that’s your wish. Choose an exciting new technology to rejuvenate your interest. It doesn’t have to be Smalltalk, though that would be an excellent start. (Pharo is only 9 years old and practically a new programming language.)
Another good choice would be Julia. I’m also impressed with Racket. You can have lots of fun with these technologies. And that’s the key: you’ve got to bring fun back into your professional life.