92 comments

[ 2.7 ms ] story [ 146 ms ] thread
Author claims to have been working for 38 years.

They're not quitting, they're retiring. What a silly article.

So, after a law professor retires s/he immediately stops thinking about law?
I'm not sure what point you think you're making. When someone takes an action, do they immediately stop thinking about the topic of that action?

Did you read the article?

Did you? He's not talking about quitting his job, but his (former) passion. That's not retiring.
Deirdre is a woman
Oh, my mistake. Thanks for pointing that out. Not really familiar with less frequent English names.
It's actually Irish (so is her middle name Saoirse). It's pronounced Deer-dra in case you're wondering
I thought "deed-ree" initially. Thank you.
Did you really?

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 she isn't retiring, is that what you are saying?
She hasn't been self-employed in 38 years. Unless she is in some very unusual life situation, you don't try your hand at self-employment, after 38 years, unless you can afford to fuck up in grandiose style and still be financially secure.

So yes, she is retiring.

You retire when you hang up your hat and start getting pension. You can keep you opinion, but I prefer the one without brave assumptions about a person I don't know.
> So, after a law professor retires s/he immediately stops thinking about law?

The proper analogy would be: "So, after a lawyer retires s/he immediately stops practicing law?"

Yes, s/he does.

So, when you retire will you immediately stop practicing programming?
Equivocation; "practicing" law and "practicing" programming are not the same thing.
It can be compared. Both require to mentally navigate certain set of constraints and rules and build up a mental model of the domain problem, after which you produce a concrete result. In programming it's software, in law practice it's mostly a written consultation or a decision.

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.

"Practicing law" specifically means performing legal services, in the real law system, for a real client. It is a term of art, not a generic English use of the term. Practicing programming has a much fuzzier meaning, because it is the generic English term.

My point is your snark doesn't hold, because "practicing law" is fundamentally a different thing from "practicing" programming.

Just because my initial comment was a short sentence, doesn't mean it was snarky; like this one.

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.

Many people certainly will – because they're already not doing it in their free time. In fact, in most professions you won't find many people who enjoy the same things in their free time as they do in their job.

As for me, I still have >35 years ahead of me, so we'll see.

I would hope when I retire I will have the money to immediately forget anything about programming and instead remember how to say "Where is Gate A?" in 20 different languages.
Can I have your stuff?
I have no idea how the middle section of this post is relevant to the rest of it. It just seems like the author needed to flesh out another rant or justify a choice no one questioned them on and decided to find any reason to diss the web. An error in the W3 validator is not really an 'error', especially considering the type of errors that are included in those 600 odd (Most of them are about missing spaces).

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

Among her later projects was Apple's Safari.

Writing code that must absolutely positively do the right thing ... with other people's unvalidated crap ... might just colour your views slightly.

Nothing to see here. Someone ranting about how there's errors in web-pages. Not really sure the point.
Don't let the door hit ya ...
First world problems :)

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.

> Sorry it didn't work out for you

What? The author was in the field for THIRTY-EIGHT YEARS!

38 years should be enough to deserve some retirement.
Unless I missed it, she didn't say for how many of those 38 years that programming sucked, though. Her examples of suckiness were all from just a few years ago.

Anyway, that's a potentially long time to be doing something you don't enjoy.

That's a difficult question. Essentially, some part of any job sucks. Even within a given field, some jobs and/or projects will suck more than others. Some tools and languages suck more for certain applications than for others.

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.

You might find freelancing more appealing than these kinds of full time jobs as you describe.
Yes, you and everyone else. That's why I don't do that much software anymore either. People are happy with a paycheck rather than to do good work and be proud over that. Then they sit on HN and criticize every other field they know even less about.
"People are happy with a paycheck..."

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... ;)

"About the Author"

"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..

Did so in the past, and therefore not a programmer anymore.
Not his job, but I guess his career choice.
"His"? I think it's a programmer who quit her job.
The article is from 2014. And Deirdre a "she"! ;-)
This is nonsense. Anyone who knows anything about developing on the web should know that W3 Validation means nothing. It's not even something worth striving for. They are not analogous to actual programming errors.
Not sure that they realized that the Internets motto is "good enough for jazz" as opposed to proper OSI internet standards :-)

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.

> "kids on the variety sunshine coach"

:( There are better ways to express this than shitting on special needs kids.

I think many comments like this are missing the point. You don't get a "Haskell/C/Java/Lisp validator". You have a compiler, which will flag obvious crap as crap. The possibly crap stuff are flagged as warnings. And then you have a linter when you want your crap to smell slightly better. But the point is that obviously wrong stuff on the web should give you errors, not a vaguely working page, sometimes, in some browser version.
It is you who has missed the point. I mention in my comment specifically that W3 validation errors are not comparable to compiler errors or run time errors in programming.

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 love programming when it is for myself or something I am passionate about. However writing CRUD apps or other mundane LOB apps is pretty mind numbing after a while. I don't regret leaving programming as my job but I could never give it up fully. I love it too much. The best bit about doing it just for myself is I can use what I want, this makes all the difference to my enjoyment. If I had to write everything in Java I don't think I would enjoy it quite as much ;)
Programming is nothing but transforming data from one form into another.

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.

Yep, you've got it. Once I realized I had the skill to accomplish a workable version of anything is when I started noticing that there weren't many problems I cared enough about to feel like they were worth my time.

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?

"...consistently one of my top ten web hits, partly because of strong Google ranking." Wonder what the other part is, because the article is garbage.
> Instead, I need to pick projects that I care about and not spend long stretches of time on things I don’t.

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.

After similar lines of thought, my conclusion is that you have to embrace the process of writing code and not get too personally invested in the end product - it doesn't belong to you, and a company can and will sell it, scrap it, or let it decay slowly. Step back and be grateful for the opportunity to apply your skills to help someone else create something they felt they needed, and don't worry about what they do with it after the fact. I've found over and over that caring about a project too much leads to disappointment - the more bleeding edge the project, the more interesting it is, and the more likely it is to die. Embrace the idea that your job is to help someone with a short term goal. It can be fun, but don't let it be your life. Life is about people, not things, and certainly not the code you wrote last week. Help someone by using your skills and move on, it's very rewarding.
Thank you. That was a much needed pick-me-up. And yeah, you're absolutely correct, but it's sometimes easy to get lost under pressure (speaking for myself).
This. So much this.

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."

That is so depressing. I'm not saying you're wrong, or wrong for saying it, but it's still depressing. For years I've taken pride in my ability to see beyond the code I'm working on, to how that code or other activities (e.g. teaching or even blogging) can contribute to business goals and/or make the computing world a better place. It's what we're supposed to do. We're told we'll be rewarded for it, and sometimes we are financially (thanks boss), but it still takes its mental and emotional toll. Others will undermine your efforts with a competing project or contrary message, or outright pull a project out from under you, often with the best of reasons or intentions, but it still leaves you feeling betrayed.

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.

My own view is evolving in this regard. There are some immensely compelling and critical problems facing humanity generally. Most offer little by way of "market opportunity", and much of what is marketable is ... at best irrelevant, and far too frequently, actively harmful. Finding how and where I can apply my skills to net benefit is an exceptionally challenging problem.
I got the "...back in my day, everything was all neat and tidy...now it's all gone to shit..." sort of feeling while reading this article. Websites have always been shit, and if you approach rendering/parsing/consuming web content programmatically and expect perfection...you're in for a frustrating experience.
In this case, "back in my day" far precedes websites, so it's entirely possible for both the OP and you to be correct.
because as a beginner logic coder it can be exhausting ... grinding and grinding and grinding away to figure out how to achieve X.

Maybe not having anytime to yourself isn't important, but im not a coding robot and need a nice amount of downtime!

Wow, I'd expect people here to be more empathic towards a person having a career in software engineering longer than most of the lifetimes of the HN crowd (assuming the article is truthful).

Instead one gets a bunch of dismissive, I-know-better-then-all-of-you BS. And they say bankers are arrogant.

Thank you.
I might've confused the gender of your name further down in the comments (not a native English speaker). Sorry for that. :)
It's easy to get down on the negative sides of programming... the rub is that there are negatives to every job. There are widespread problems in every industry that need fixed/improved.

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 think the author is tired of being "liberal in what you accept." In other words, getting old! :D
Wow, I thought I was critical, but there's some serious negativity going down here.

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.

I feel she was gloating more on what she did than why she quit, but I am in the same boat, I hate programming for others. I have a single client I work for that pays my bills and the rest of the time I build my own stuff. Sometimes the work for them is so mind numbingly boring and not interesting to me, that I could go a whole month only putting in 15 hours of work.
Were I gloating, I'd point out that I a) had code in space before I turned 18 (digital tape driver); b) had written (in Pascal) the code to control emissions for four power plants by the time I was 22.

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.

People aren't being critical, they are being dismissive. Which is completely accurate with what the author is saying.

- "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?"

Irrelevant rant, irrelevant article, yet in the front page of HN. Beats me every time.
I totally get burning out or losing your passion etc. But I'm not sure how other people's web pages being of poor quality affects one's own work -- if anything, it motivates me to do a better job (and gives me a competitive advantage, or at least a reputation which attracts the right kinds of clients/customers).
The author mentions working on Safari. Perhaps writing code to deal with other people's crap has something to do with her views.
https://github.com/deirdresm Maybe you haven't started programming at all?
Actually, I deleted my github account while I was a software engineer at Apple. Here, have a photo of my Steve Jobs engraved iPad I got while working on the Safari team:

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.)