Programming Sucks and Why I Quit (2014)
deirdre.net
deirdre.net
On the other hand, that doesn't explain everything. As the computing industry has become bigger and more lucrative, it has also become less like a gentleman's race and more like a cage fight. The primary mode of interaction has shifted from collaboration to competition. There are always more projects in any given space, creating more factions each more determined to sling FUD at each other so that their project and their investment in it stay relevant. There are more sub-sub-domains of knowledge, with those on the peaks of each sneering at the others. The environment for women has become measurably worse than it used to be; I worked with a higher percentage of women on Encore's kernel team twenty years ago than I do now even at Red Hat. It's a nasty, aggression-soaked environment, and anybody who doesn't believe that must not have read the other comments on this very page. I can tell you, it didn't used to be that way.
Programming as an activity has its ups and downs. Programming as a career has started to just plain suck.
Do you have some measurements to back this up? I could believe it's true, but you shouldn't say something is measurably worse and then not provide those measurements.
Man does this resonate...for the last several years now I have recurring encounters of people in programming having no interest in doing or discovering what's Right, but rather only concerned about Winning petty arguments, pushing their agenda/tool/framework. The culture of programming to me feels largely corrupt. Or maybe I'm just in a bad mood for the last few years.
I don't think most men in the industry can imagine what that would be like.
Maybe the article is a little scattered, but the tl;dr is Deirdre switched to programming for herself, and quit making crap other people want. For those reacting to the title without reading the article, she clarified that programming is awesome, but programming for money on other peoples terms sucks.
I don't know about you guys, maybe you're too young, but it resonates with me. Maybe I would have wasted fewer years programming for others earlier in my life if I'd known how bummed I'd get about it, or how excited I'd get about programming on my own terms.
Truth is, I feel like there aren't any more really interesting problems for me to solve. I've accomplished enough of each kind of thing that really engages me that I'm done.
I'd turned down an Apple job in the mid-80s and always regretted it, so once I spent 5+ years on the Safari team, I felt like that was the only checkbox left.
- "There a problem in software, no one is taking it seriously" - "There's no problem in software that I know of, why do you even care?"
EDIT: Just seen the date on the article, likely the hundreds and hundreds of errors at the time are gone now, seeing as there's only like 50 showing now
Writing code that must absolutely positively do the right thing ... with other people's unvalidated crap ... might just colour your views slightly.
Once you reach a level of competency where like the author of this article you can implement any kind of transform you like then 99% of programming becomes rather boring.
Sure there are still the 1% of interesting problems and algorithms that are fun to work on, but you can only implement so many basic CRUD API's, and boilerplate business logic classes, and cut and paste website designs before you tire of that stuff.
After 30+ years of coding I'm sure the author of this article has implemented pretty much everything she has ever wanted to. It's natural that she would find implementing the same things over and over again for other people to be unrewarding, and instead desire to pursue the new challenge of designing an interesting new product of her own.
There are things I'm interested in implementing still. I still enjoy working in Ruby, and my Python's gotten rusty, but I actually work mostly in PHP these days (because of WordPress). I keep promising myself to learn Swift, but I lack Swift-type problems to solve that I care about.
The other thing, as one gets older and has a lot more experience: how much of your remaining unknown quantity of time are you willing to spend doing programming vs. some of your other life goals?
They're not quitting, they're retiring. What a silly article.
Did you read the article?
She isn't quitting her passion, she's quitting doing it for someone else, i.e. her job.
>"It’s not to say that I have no interest in software. Of course I do...What I mean is that I can’t do it for someone else the way I used to...I have some ideas of what I want to do software-wise, but I’m not ready to announce them yet."
So yes, she is retiring.
The proper analogy would be: "So, after a lawyer retires s/he immediately stops practicing law?"
Yes, s/he does.
The point I'm making, is that both are mental endeavours. Programming isn't constantly typing at a desk, hitting TAB, and letting the IDE do the rest, but actually solving the problem in your head.
If I quit a programming job, that doesn't mean I stop thinking on programming problems. Same goes for law.
The problem that the author is describing, is that she has reached the limits of her profession to such an extent, that even thinking on (most) programming problems isn't interesting to her anymore. Which is a sad thing.
My point is your snark doesn't hold, because "practicing law" is fundamentally a different thing from "practicing" programming.
And although I agree with your definition within a professional legal context, that context is irrelevant to the discussion, since we are discussing a person's personal relationship to the discipline.
As for me, I still have >35 years ahead of me, so we'll see.
Instead one gets a bunch of dismissive, I-know-better-then-all-of-you BS. And they say bankers are arrogant.
Maybe everyone reaches a point where they become jaded, but all of the things causing the author to quit are the exact things that make me want to continue.
"Deirdre Saoirse Moen is a science fiction and fantasy writer, photographer, and graphic designer from Menlo Park, California."
What? I thought this was a programmer quitting his job..
https://validator.w3.org/nu/?doc=http%3A%2F%2Fdeirdre.net%2F...
I think the more likely reason why validation errors show up all over the internet is because for 99% of business/entertainment/service on the internet they are irrelevant.
Personally I would not like Firefox to fail to render on HTML validation errors, what a terrible idea that would be.
In the meantime, I have no idea what HTML validation has to to do with not enjoying working for someone else.
Swap "programming" from the sentence: Programming for somone else sucks. With "carpentry" or "plumbing" or "manufacturing" or "cooking" and you'll have the same bitter, burned out employees. The trick to life is to avoid being bitter when asked to get things done, and rather take pride in having been asked to help someone get something done. If you don't feel appreciated in your work, look for something else to do. If there is literally nothing else you can do, being bitter isn't going to make life any better.
Not to sound like an asshole, but I have very little patience for people who lack creativity in how they use their time. Yes, I've been frustrated at my work before, and listless in the face of a project I don't want to start/finish, but I find a way to keep working, or I'd be looking for something else to do.
See my recent comment about Web fonts, and additional discussions about Web accessibility for the disabled (a very good friend has exceptionally limited vision), and think over how a truly semantically constructed Web document might be just slightly easier to parse by assisting software or systems.
https://news.ycombinator.com/item?id=10326649
https://plus.google.com/104092656004159577193/posts/f6mP6XqH...
A rigorous document structure, strict adherance to it, and penalties (e.g., lower SERP ranking) for invalid / poorly constructed pages would help.
As for Saoirse Moen, her (last) day job was in fact working on a Web browser. Dealing with crap HTML, JS, CSS, etc., etc., etc.
I'm a sysadmin, and I have almost no formal programming training, but on the side I really like experimenting with developing solutions to my very specific set of problems, and it is empowering to me. At work I often cobble stuff together in bash, perl, and python, but I'm sure if a professional programmer reviewed my code they would balk... but it works for me, and I document everything heavily to make sure the next fellow won't have too much trouble.
For me programming is about problem solving, because that's what I do best. I will admit though, sometimes I go through burnout phases, and perhaps this is where the author is at the moment.
In the end, we all have a choice of what we want to focus on and what to do about it.
Stay focused on the bright side, minimize the negative, and keep on keep'n on.
I'm getting this feeling myself more and more lately. And I've only been doing this for a little over 5 years. Although, I wonder if I'll have this thought regardless of what field I am working in.
The brick does not love you. The company funding any project is a brick. No matter how much you love the project (or enjoy the people you're working with), it's temporary.
Detachment is the only way to stay sane long term, but then you're not viewed as "passionate."
To end this on a more positive note, consider this: "we're not here to make friends" is EXACTLY WRONG. The friendships you make are the only thing that will last. The "legacy" of your code will become smaller and less valuable over time, even if it's really awesome code; more likely it'll just be tossed aside without a second thought by the next developer or exec with their own agenda to pursue. Your money will be spent. All of the companies I worked for twenty-plus years ago, their technical and financial assets gone as though they'd never been, but some of the friendships I made back then continue. Make code, make money, make friends, but only one of those will last.
Even then OSI had It's "kids on the variety sunshine coach" members who couldn't implement to standard I am looking at you Sprint and ICL.
:( There are better ways to express this than shitting on special needs kids.
As far as things working in one browser and not another, if you're working with standard features they tend to work across all modern browsers. If you are using features which are still only candidates, then yes they may not work but you've chosen to implement non-standard features so you've done this to yourself.
I'm sure it's more efficient and effective, but it feels like factory work now.
Though I prefer the modern tools.
http://deirdre.net/wp-content/uploads/2011/10/SJ-engraved-iP...
Presence or absence of a github account isn't meaningful. Plenty of really great programmers have never had them, and there's plenty of crap code on github. (And the inverse is also true, of course.)
I'm grateful for the opportunity to work from home, support my family comfortably, be in a field with lots of employment opportunities to fall back on, and be constantly learning new stuff.
Sorry it didn't work out for you, but it sounds like you found other interests to occupy you and (hopefully) support you, e.g. fantasy/scifi writing.
What? The author was in the field for THIRTY-EIGHT YEARS!
Anyway, that's a potentially long time to be doing something you don't enjoy.
I've always enjoyed—and still enjoy—the technical aspects of programming.
Since this just came in my email….
"Working at $FIRM offers you the opportunity to work in a fast-paced, challenging, startup environment with a team of passionate individuals who love bringing ideas to life. At $FIRM, no role is small and every person plays a part in the development of our game-changing technology."
fast-paced = you won't have time to think to solve the problems better
challenging = no one knows how to behave themselves, least of all the founders
startup environment = so forget reasonable workweeks and having any time on weekends
team of passionate individuals = they don't have lives, either
no role is small = you will be assigned roles that the last person quit over because it was so trivial
That's the kind of thing I'm done with.
Hm, a rather cynical comment. It seems to me there are lots of highly enthusiastic participants on HN, and I'm blown away by how knowledgeable they are in many other fields as well--the sciences, culinary arts, music, sports....
It's quite a diverse crowd. It's safest to not generalize... ;)
Maybe not having anytime to yourself isn't important, but im not a coding robot and need a nice amount of downtime!