Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It's a problem that you think it's a rarely talked-about problem. You can't go two weeks on HN without a post from a founder or startup employee "breaking the silence" on their burnout, getting up-voted to the front page and getting hundreds of "me too" replies.

Why do we continue to think burnout and depression are unique problems? Why do we keep letting it happen to ourselves? We style ourselves as so smart, yet we continue to make the same mistakes, over and over again, and act like it's a new problem each time.



>>Why do we continue to think burnout and depression are unique problems? Why do we keep letting it happen to ourselves?

The answer is very simple: productivity + youthful optimism.

The fact of the matter is that productivity — that feeling of "getting shit done" — feels good. Being smart doesn't help. On the contrary, it makes things worse, because smart people find clever ways to multiply their productivity, and their sense of pride for doing so contributes to the pleasure and satisfaction they get from their work.

Now combine this with the fact that software engineers tend to be young. Young people can endure longer work hours — they tend to not have families and kids to worry about and their bodies can take more punishment. They also tend to be idealists and really optimistic about their chances of actually making a difference in the world. These two factors can cause them to justify insane work hours, even if they are aware of the dangers of burnout and depression.


I think the problem is even a little more subtle. The thing a programmer should ultimately aim for is to automate themselves out. But there are two strong disincentives to doing so. One is economic - they don't participate as a stakeholder equally unless they're cofounders.

The other is a disincentive to improve. By this I mean that becoming a better programmer means taking on deeper challenges and solving increasingly obscure concerns and constantly reaching a point where no IRC channel nor Stack Overflow thread can help you. This takes you out of flow. It's not fun to work right up at the limit of your ability, you have no hope of bullshitting through that level of difficulty in crunch mode, and developing those skills alienates other programmers who are not burdened by the demons you have fought. Plus the majority of software businesses have arranged themselves around making some use of fresh, mediocre coding talent, so going too deep and too specialized can make you less hireable!.

So it works out that prevention with good engineering can grow discouraged in favor of all nighters.


> he thing a programmer should ultimately aim for is to automate themselves out.

This is something I ferociously agree and disagree on at the same time.

1. Yes automating labour inputs is the key to growth. Always has been. That is the point in your favour.

2. But paradoxically once you have automated your labour input you grok no further efficiency gains. Why would you when you've reached '100%' efficiency?

This is a bit counterintuitive. Here is a toy example; suppose I manufacture hammers at HammerCo Corp. One day I manage to automate all labour relating to the manufacture of hammers. I am rich and successful as competitors die off.

Then suddenly I myself go bankrupt because a new competitor introduces hydraulic or pneumatic hammers onto the marketplace in which I had my niche. I have no expertise to counter the move and cannot defend against it. You don't comprehend you were in a local maxima.

When a worker closely observes a technological process he or she is involved in they might notice details (or going the other way, general rules) that would not be noticed by causal observers. This leads to creative insight that coupled with capital can allow the invention of new designs and ultimately technologies.

I guess the same thing is true of programming. If you abstract too much (something we've been doing for some time now with frameworks/libraries etc) you lose the thread.

I'm sure somebody else has thought of this before and given it a name.

> Plus the majority of software businesses have arranged themselves around making some use of fresh, mediocre coding talent, so going too deep and too specialized can make you less hireable!.

So many people get institutionalized into mediocrity. If they don't get you at school, they'll get you at work. Very few people manage to escape those traps.


>It's not fun to work right up at the limit of your ability, you have no hope of bullshitting through that level of difficulty

This isn't just for programmers. Pretty much any occupation where you're routinely in a situation where you are responsible for making decisions based on incomplete information or with a large element of chance/luck affecting the outcome will wear you down fairly quickly.

President, pope, EMT, infantryman in foxhole, cartel kingpin (and other criminals who make enough money to be "noticed" by authorities) etc., to name a few.


> The answer is very simple: productivity + youthful optimism.

Culture also plays an important role. In the U.S., work ethics largely trumps work-life balance, and the threat of being perceived (or seeing oneself) as a slacker spurs you to work long hours or take very few holidays. It also relieves some anxiety, as in, "I work hard, at least they can't take that away".

But there is a high price to pay for it, and burnouts or massive regrets later in life are parts of that price.


I think though we are moving in the opposite direction, or at least trying to - there was an Ask HN about what prevents companies for hiring programmers to work shorter hours: https://news.ycombinator.com/item?id=12161693


There's a great book catering to people just like who you described (me included) - "If you're so smart, why aren't you happy?" I'm part way through it and it's been helpful.

https://www.amazon.com/Youre-Smart-Why-Arent-Happy/dp/B01DYF...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: