Live data from Hacker News

Programming is a Terrible Job

pastebin.com

241–250 of 296 posts

Re: Programming is a Terrible Job

#241
I came to this late and will probably get buried. Anyway, here goes.

1. Programming punishes you brutally if you do it wrong. Bugs occur for what seems like no reason, problems are unsolveable, and the job becomes an unrelenting, unrewarding slog. (Conversely, it's a hell of a lot of fun if you're doing it right.)

2. Some companies and teams are managed by idiots who will force you to do things wrong. If you're 22, you'll probably end up working for at least one or two before you're 40. Leave them, because...

3. Until you get used to doing things right, and learn how to things properly, and get the credibility that comes with actually being good at this job-- and that takes a while-- nothing will make sense and your career will be for shit.

When you're bad at your job (and everyone is, when starting out) or when things are bad, it's not obvious. Nothing is ostensibly bad, so much as incoherent. You get trapped in a flood of grunt work that seems beyond automation because either (a) you're not skilled enough, yet, to do it; or (b) you're not in an environment of excellence that encourages automation. When things seem unpleasantly stochastic, get out and move to a more coherent place.

The issue with OP is that he hasn't figured out that solving the right problems is far more important than solving the highest percentage of what's put in front of you. IE hacks? If it's your web app, or if you're strongly investigated in the success of the thing, make a cost-benefit analysis and decide whether to do the IE hacks; at least if you end up doing them, you're doing them for you. If it's someone else's ambition and you know that doing good work won't be paid in kind, just do well enough on the grunt work to avoid political adversity. Then pack away as much time as you can to learn the skills you'll need, and make the contacts you'll want, for the next act.

Rule One, which should never be broken: if it's bad for your career, don't work on it. I'm not saying never work on unpleasant stuff. Sometimes, the unpleasant work is important. If you ever want to be a founder, you have to get used to doing annoying or unpleasant work when there's no one else to do it. However, if the work actually hurts your career-- and there is plenty of work like that out there-- then it's virtually never worth doing.

In the short-term, if your boss considers it important, it is (by definition) good for your career. However, if you're getting tossed the IE support while the interesting work gets passed on to favorites or hogged, then it's time to (a) just get up and do more interesting stuff-- it's better to ask for forgiveness than permission-- or (b) find another team or company. So long as people like OP don't realize that they need to take self-executive responsibility for their own careers, they'll be doing the shit work no one else wants to do.

Programming gets a lot better as you (a) get better at it, (b) gain credibility, and (c) learn the warning signs that surround bad jobs and failing teams. There are a lot of people who get to work on better stuff than someone else's IE support. It takes a while to get there, and it's done one day at a time, but unless you're untalented, steady progress will lead that way. Even if you don't care to play politics actively, you have to learn the warning signs. That takes years. Until you develop those skills, everything seems nonsensical and wrong, though; and the industry seems uniformly terrible. It's not. It's mostly terrible; the good news is that it's mostly terrible because of the MBA-style, anti-intellectual management that used to be common everywhere, and that's slowly going extinct-- because what it produces is of too low quality for it to survive.

Re: Programming is a Terrible Job

#242
post #237

Does this person think that programming will suddenly be a breeze if it is done as a hobby rather then as a job? Even if you are programming in your own free time you will still have to deal with the perversions of internet exploder and other fatally flawed programming platforms. At least if you are doing it as a job you are getting paid for it!

I think what happened to OP is that he's getting tossed the shit work and nothing interesting, so he's doing someone else's IE support.

If you're building your own web app, you decide if, and when, to support IE. If it's bringing in $10k/month and you can double that, it's worth the hours of unpleasantness to get the additional money. If it's something you're doing for fun that isn't going to make money, you don't do the IE hacks. But there's no point in doing someone else's IE support, unless you can get a promotion or a bonus out of it.

The problem is that while he sucks at politics (that's why he's doing someone else's shit work) he doesn't know he sucks-- the first of four stages, unknowing incompetence-- so he thinks that the industry is just chock-full of shit work, because that's all he's able to get (and he hasn't figured out that you don't really "get assigned" the best work; you just do it). He needs to learn how to fight for himself; that's his real problem. Otherwise, he'll end up pulling a Walter White over-correction when it's decades too late.

Re: Programming is a Terrible Job

#243

I'm approaching 20 years of doing this and I would love to have 20 years more. What this really sounds like, and the message gets muted by the complaints, is that the author wants you to find a part of software that interests you and follow that path. I agree 100%. Some people love front-end Javascript websites and all that entails. I find it painful. I still do it when called for but my true love is in low level pro…

Circa 15 here and still fascinated, too. I think it's sad that the author of the paste hasn't found a commercially supportive environment for their interests. Maybe they should fall back on themselves for awhile (take a non-coding job, code for interest on a project they enjoy in a part-time context with some potential commercialization strategies). The comment right at the bottom of this page is equally correct: noobs gonna noob.

Re: Programming is a Terrible Job

#244

I'm approaching 20 years of doing this and I would love to have 20 years more. What this really sounds like, and the message gets muted by the complaints, is that the author wants you to find a part of software that interests you and follow that path. I agree 100%. Some people love front-end Javascript websites and all that entails. I find it painful. I still do it when called for but my true love is in low level pro…

Totally agree. I've been writing software for money since '98 or so. The joy for me has always been solving problems at all levels. First, understand the business and the problem. Next figure out high level solutions that hopefully involve software. Finally get down in the details and write said software. Over the years I've written systems using a variety of languages and it is still fun. Heck, once I started using git (a godsend to someone whose first SCM software was Visual SourceSafe) I actually enjoy code wrangling.

When people ask what I do I always tell them how fortunate I am to have stumbled into something that I love doing, can make good money, and am okay at doing it.

Re: Programming is a Terrible Job

#245
> Ariel T. Glenn (née Laura A. Nickel) with Landon Curt Noll discovered on October 30, 1978 that 221701 − 1 was the 25th Mersenne prime. This made international news because Noll and Nickel were still high school students. For the verification of this number alone, the pair used almost eight hours of time on a CDC Cyber 174 at California State University [1]. They consumed over 4000 hours of computer time in their search double testing M21001 through M24481, along with a test of M65537 using a custom implementation of the Lucas-Lehmer test.

I don't know who wrote the linked article. But I do know that the above text was the wikipedia page for Ariel T. Glenn before it was deleted. She currently works for the Wikimedia Foundation.

Re: Programming is a Terrible Job

#247
post #186
post #41

Earlier quoted context omitted.

"Solving problems is interesting. Repetition is terrible." Most "programming" is just "digital plumbing". No matter how flashy or utilitarian the taps or basin are, underneath the job is pretty much always the same - you hook up hot water to one tap, cold water to the other, and the sink drain to the drainpipe. You can do a great job or a shoddy job - so long as nothing leaks _too_ much, it doesn't make any differenc…

I don't exactly know the truth of your statements above, but I've spent my life doing all of that cool stuff. I've written code for flight computers, done machine vision for factory inspection, supported cancer research by doing stats and data analytics, written 3D viewers/playback for aircraft black boxes, worked on robots and UAV for several years, and now I'm doing some computer vision + AI work that I can't make…

Roger, may I ask what you pursued in University? You said that you learned chemistry, physics, electrical engineering and mathematics, but what degree did you get specifically? I ask because I currently have a CS and Finance degree, but would prefer to work on the type of problems you speak of. I'm currently considering doing a masters in Computational Mathematics, but I don't know whether that would get me to where I want to be or not. Any help at all would be greatly appreciated (I also saw your post here: https://news.ycombinator.com/item?id=6462363, and I completely agree with your sentiments regarding most of the job positions on HN.)

Re: Programming is a Terrible Job

#248
post #89
post #67

Earlier quoted context omitted.

Oh I know (I also said so in my comment). And that's why I consciously try to distribute the interesting work between my coworkers and I. That way everybody gets a nice mix between "job" and "fun". Does that mean that sometimes I have to do crap? Yes. Does that mean that everybody gets to have fun at times? Yes. If I can help it at all, I will not be the person responsible for somebody to write the rant that OP has p…

Very well put, a nice mix between "job" and "fun". Except that most employers want their employees to do the "job" part of everything and do any "fun" parts in their spare time.

That's a shitty employer; 1. it's sadistic to require programmers not enjoy their work 2. if you've got a bunch of bored programmers you're going to lose your top-tier men and women to more interesting jobs.

Re: Programming is a Terrible Job

#249
post #207
post #198

Earlier quoted context omitted.

> As for the couple hundred guys making multiple millions a year who you hear about all the time? Well, there’s even more engineers who have struck it rich with a startup, and no baseball player will ever come close to Zuckerberg-level wealth. You are comparing employees to a CEO and business owner (which doesn't have anything to do with technology, other than for the initial lines of code). Of course he has more wea…

CEO of a company with a single product, which is a web app that he wrote the first several versions of by himself, in his dorm room. Yeah, he did it in PHP, but that doesn't mean he wasn't an "engineer" working on "technology."

Still not an employee. If I inherited a big fortune would you put me too as an example of how lucrative this career is?

Re: Programming is a Terrible Job

#250
"Imagine coming to work to spend hours googling, wiring together unbelievably shitty, amazingly poor documented frameworks and battling Javscript and CSS."

Not all programming is writing web apps or gluing together frameworks. Some developers work on lower-level software, which involves writing more code from scratch and doing more algorithmic thinking. It depends a lot on the job. There are very few problems in the code I work on that can be solved using Google or StackOverflow.

Post reply on HN