This was always the case. Anybody remember the old Kuro5hin thread about the programmer who quit to become a bike messenger? I think that was back in the early 00s. Jamie Zawinski quit programming to sell beer in 1998.
What is it about programming that makes so many people want to quit and do something else?
It’s repetitive, really boring (once you get over the initial infatuation, and the sameness sets in, and you’re not getting to pick what to work on because it’s a paid job, not a hobby), and half or more of the time your work is just thrown out without doing any good. But it’s so hard to leave because money’s so much worse doing almost anything else that doesn’t require going back to school for a bunch of years.
Truly Sisyphean. “Hurry, roll that boulder! It’s important!” And then the boulder rolls back down the hill and everyone shrugs and starts back over. “Go, go! Important!”
And everything you have to use is probably broken and/or terrible. Even, and perhaps especially, software from major vendors staffed with “geniuses”. So very much time wasted to our tools and libraries being shit. It’s frustrating, and it’s day, after day, without end.
It grinds you down. At this point if pay were equal for all careers, programming would be pretty far down my list of preferred occupations.
It’s easy to start dreaming of throwing the fucking laptop in the trash and starting a Christmas tree farm or becoming a carpenter or some shit.
I've found that you only suffer from this mental frustration / burnout when you are writing software under time pressure and you have a boss. It's not true for hobby projects where you can take your time, lovingly sand and polish your project. Leisurely iron out every compiler warning. Run static analysis over and over finding every last imperfection. When I wrote software for a living, I was just fighting frustrating tools and barely churning out crap as fast as I could. Now, I'm making beautiful artwork. And the best part is I don't release any of it, so there's also zero pressure from users.
I'm pretty happy with my path, all things considered - the biggest issues re: programming for me is:
- carpal tunnel; have already had the surgery 1x on left arm and 2x on right with some persistent issues that some PT is tackling
- eye strain; have been messing with blue light glasses alongside some monitor changes and using trying to use more saline (I forget to blink all day), not perfect but it's manageable for the time being
A good friend is a mail carrier and I'm actually super jealous of her job; I went from walking several miles a day as a server in undergrad to 5hrs standing/3hrs sitting while working with an AM/PM walk to bridge the gap but it's just not the same as being active all day. Have been considering making a move into something else...but it's unlikely to actually happen tbh
> A good friend is a mail carrier and I'm actually super jealous of her job
You're envious of the side effects of the job, more physical activity. Bet she's jealous of the side effects of your job, more money. Probably neither of the jobs themselves are intrinsically attractive to the other.
That's a good point. Everyone likes to talk about how trade jobs wear the body down, but most of the people I see going to PT and dying of heart attacks in their 40s are office workers.
There's definitely a kind of wear that comes from an office job, but it's one that can leave you with enough juice to improve your own fitness, if you're proactive.
> What is it about programming that makes so many people want to quit and do something else?
They don't just want to do something else but something very different, everything IT/computer work is missing. The common theme is "less tech" or "outdoors". People dream about what they're missing. Farming is not at all easier on the body but all of a sudden it becomes attractive by being different.
IT work usually brings you enough money and safety which let you think about any dreams and that you'd be successful with them too. But it's also just stressful enough that the dreams look like a good alternative. Your mind melds the financial success from your current job with the spiritual happiness of the dream.
I am working towards quitting programming. Everyone in programming is insane. Managers, stakeholders, other programmers. I'd rather do construction and program on my off time.
Margaret Hamilton coined the term "software engineering" circa 1965, because she recognised that she and her fellow Apollo programmers were doing engineering, and had to be doing engineering, because otherwise people would die.
Engineering involves requirements analysis, specification, and the mathematical analysis of families of components to demonstrate – according to the known laws of reality – that the proposed solution meets the requirements and won't kill people.
E.W.Dijkstra advocated, repeatedly, from the 1970s onwards (EWD340 – and probably earlier than that also), that software should be formally-analysed and -verified as a matter of course. He called this humility. We call him arrogant, and insane.
> I now suggest that we confine ourselves to the design and implementation of intellectually manageable programs. If someone fears that this restriction is so severe that we cannot live with it, I can reassure him: the class of intellectually manageable programs is still sufficiently rich to contain many very realistic programs for any problem capable of algorithmic solution. We must not forget that it is not our business to make programs, it is our business to design classes of computations that will display a desired behaviour.
Nobody does this. We don't even try. As you said, everyone in programming is insane: so much so, that proposing "hey, why don't we try writing computer programs we actually understand" elicits laughter and scorn.
In every other engineering discipline, proposing a solution that you do not understand will get you fired. In software engineering, it's a Tuesday.
I am a software dev in a company that doesn't sell software. We have everything, management, production, logistics. Developing software here is a blast and quite varied. Yes, this does result in very specialized applications where some of them have a huge amount of technical debt (often also caused by yourself), but you have a lot of freedoms.
That freedom has advantages and disadvantages, but almost everything you do will become immediately productive.
My experience by pure software companies was the same. Insane is pretty accurate.
What is it about programming that makes so many people want to quit and do something else?