However, while many people will rightly complain about stress in the workplace and long hours coding, I'd like to also point out that stress and lack of sleep can come in a variety of packages. I've seen good programmers destroy their careers because they thought there was no problem staying up drinking all night on workdays. I've experienced (unfortunately) being in a bad relationship and arguing with my SO all night until it was time to go to work.
Stress and sleepless nights will cost you in your career. It might cost you a lot. It's not sexy to be the person that avoids drama in their life and manages their sleep schedule well, but it can have pretty significant rewards. If you think that in SV the difference between a top and middling performer can easily be in the $100K per year area, it puts a pretty hefty price tag on "Oh, I'm pretty sure I can catch up on my sleep on the weekend".
From the "hard to talk about, but I wish I knew this 20-30 years ago" department :-(
If that ever happened to me I'd seriously consider my life choices in the romantic department.
I've been with my current SO for over 10 years (and married) and had a couple long term relationships before that.
We've had arguments like any other couple, but never an all night argument.
There's still a lot of nuance. What studies there are don't negate the existence of variability either. Well, then what's the point of bringing up the subject? Taken broadly sleep is important as life itself, but then it has no place in an earnest discussion around improving productivity. Taken narrowly, it's very context sensitive, so it's again rather useless in discussing improving your own or even your team's productivity unless you're already in the weeds of knowing individuals' detailed backgrounds.
There's a fun fact johnc's comment in that thread points out. We can all agree if we want that if people aren't getting their 8 hours (or some number close by), that has to happen first, and we can ignore whatever nuance/variability/context objections one might have. But with 8 hours, there are still over 100 other hours in the week. 80 if we're just talking M-F. What are you going to do to fill those more productively? If switching languages lets you do something in half the time as otherwise, why wouldn't you switch, and rather than just taking half the day off, continue working and do twice as much as you would in the other language for the day?
Is the point that you shouldn't unnecessarily waste your waking life for some company? Fine, but you shouldn't do that even if you're getting 10 hours every night and are only asked to work 30 hours a week if those 30 hours are truly a waste. On the other hand, you might be in a situation where 80+ hours this week (hopefully not forced to be compressed to M-F or intrude on your sleep requirements) spent on work is the most non-wasteful thing you can think to be doing with your life at this time. Circumstances are different.
That leaves at most 60 hours a week to truly dedicate to work. The people who work more are sacrificing quality of life for productivity. While a very small minority of people really can maintain that, most of us can’t. We shouldn’t take advice from the outliers who can. We shouldn’t work for companies where a schedule that leads to burnout is the norm. It’s a signal that the company wants to suck you dry then toss you away.
Furthermore, with knowledge workers... we often never stop thinking about a problem. The thinking is “real work” — I’ve had inspiration about how to solve a problem strike during dinner. Whip out the phone, send myself an e-mail, then deal with it in the morning. But the obsession with maximizing individual productivity at all costs is literally killing us.
So it's not just 8 hours, it's also midday naps, circadian rhythms, it's letting people sleep when they need to.
And you didn't even mention stress and there are of course myriad ways to improve mood levels and reduce stress.
And obviously some of that stress will come from your choice of tools and methods, but again, we have little evidence as to which tools and methods produce the least amount of stress.
It's not what you do, or even how you do it, it's the circumstances in which you do it that have the greatest impact on your ability to do it well.
Work 80 hours, work 5, play 50, dig ditches, cure cancer - doesn't matter, fix sleep and stress before worrying about the little things.
If you have a long commute, I can recommend it.
Why did they not immediately see a drop in productivity when implemented?
Is China’s software industry making itself less competitive by not letting its workers sleep enough?
It's really not that different to Google having nap pods.
Yo don't always have the luxury of waiting till you're in a nice cool bed with the environment and time of your choosing.
People need sleep when they need it. Pretending otherwise is foolish.
Isn’t it the same in all professions?
Deep Work in particular made a bigger impact on my programming than any thing else in ~25 years, including languages frameworks and tools.
What I’m saying is, good sleep and the principles from Deep Work made more of an impact on my productivity than switching from Java Spring, to Ruby on Rails, or to functional JS and Serverless. Put that in your pipe and smoke it.
Then again, this is not repeated enough! Moreover, I have the idea that companies don’t know, they should.
I've found it helps with my mood, and my stress and also productivity. I've also found that it is possible to have the same effect of not enough sleep, by getting too much sleep.
Maybe tools don't matter much either, but... essays on twitter?
Some dumbass downing Red Bull to type `console.log("got here")` for the fiftieth time in the last 36 hrs without sleep isn't on my level.
All these things aren't things for Mr. Red Bull. They're for me trying to close the gap in productivity to Carmack.
Or rather that's all true for my friends. I can only deadlift 345.