When I started out 100+ hour weeks were the norm for me. I worked the first year and a half without taking a single day off (neither weekends nor national holidays). Definitely not worth it for me.
In my 30's I got smarter and programmed as much as I wanted (which was still a lot more than I got paid for). Career was still a huge priority for me though. I struggled to find work/life balance because I thought it was a zero sum game.
In my 40's I took 5 years off and taught English in Japan. I came back to a programming career 2 or 3 years ago.
What have I learned? Heads down coding is really important to me. I prioritise it. It is what I enjoy doing most in this world. I pretty much ignore my career now and just try to help out my team the best way that I can. I like helping people (I learned that from teaching). I also try to write as much code as I can before I get tired. And then I rest.
My job is fun (most of the time). Sometimes helping people who make my job not fun is very hard, but you always have a choice whether to help people or not. Sometimes if I can't help someone, I have to let it go. I have learned that there are some jobs where you have to let the job go because you can't help the people who are there. But in my experience, most jobs aren't like that. Usually there is a place for people who like to write code.
> It's only depressing if you first hear it after said years have flown.
... or if you (like me) ignore it because your knowledge and experience are 'state of the art'. Really depressing seeing those 'shortage of IT workers' articles. I would laugh if I could laugh.