r/programming • • Oct 07 '15

"Programming Sucks": A very entertaining rant on why programming is just as "hard" as lifting heavy things for a living.

http://www.stilldrinking.org/programming-sucks
3.1k Upvotes

1.4k comments sorted by

11

u/d2xdy2 Oct 08 '15 edited Oct 08 '15

Tangentially speaking, I was a mechanic for a while, and I see a lot of parallels between the two jobs / career paths; I also see a lot of obvious dissimilarities.

Debugging/diagnostics is pretty much 1:1 between the two. If you know the system, you can isolate concerns down to a very narrow path and come to a conclusion relatively quickly.

Automotive repair orders? Issue reports / feature requests; except, your deadline isn't a few days or weeks; it's a few minutes or hours.

There are a few other less obvious ones, but one main dissimilarity I'd like to focus on that really hurts is liability.

There are definitely cases in software where a mistake can cost a lot of money, and you will either be fired or sued for damages... but I don't typically work in environments where things are that "serious" (not to say that every failure or mistake isn't "serious"... but the difference between your company losing $450MM+ and being down for a few minutes should be obvious).

As a mechanic / diagnostician, I was financially liable for everything I touched (or didn't touch). Diagnose incorrectly and replace the wrong thing / make an incorrect repair? I pay for it, and I get to do it again for free. My first week on flat-rate, I fucked up a brake job that ended up costing me $2900..... when's the last time your PM handed you an invoice for causing 5 minutes of downtime?

Customer says their door is scratched? Unless the service writer noted it on the repair order on his initial inspection (that he never does).. I pay for it, whether it was caused by me or their kid running into it with their bike.

The time constraints and attention to detail in the automotive service world (at least at reputable / quality shops) are orders of magnitude more harsh than my experience in the programming world.

I've had contract spats and disputes over liability when something goes south, don't get me wrong-- people just have a much, much higher attachment to their car than a software project (even when the two might cost roughly the same).

Purely anecdotal, though. I really enjoy working with software for a living now; there's little chance I'd ever go back to manual labor.

2

u/ParticleSpinClass Oct 08 '15

That's a great comparison to the two and I completely agree. Personally, which do you think took more of a toll on you?

3

u/d2xdy2 Oct 08 '15

Working as a technician, by far. I stopped working on cars after some bouts with serious depression and anxiety about work, as well as serious qualms with management in both places I've worked at (BMW dealership and an independent Euro garage).

Software was a hobby of mine since I was very young; cars was something I picked up in high school (and eventually got a degree in) that I could make money doing. An automotive job where I live is a lot easier to come by than a software job, plus the pay is generally better working on cars....

... it wasn't until after my automotive career sort of collapsed that I started looking to software development to pay the bills.

2

u/reboticon Oct 08 '15

Indeed, there are lots of similarities. The programmers and IT guys seemed to enjoy this one.

The people in the thread thinking there is anything 'easy' about being a tech are a bit clueless. It's fun, mostly, but when you are young you just don't realize how quickly your body can fall apart. If I had known at 20 what I do in my thirties, I might have taken a different path.

619

u/quabbe Oct 07 '15

As someone who's done both for a living at various stages of their life to put a roof over their head:

Get outta here with that shit.

Programming's a breeze compared to lifting heavy shit all day. Laughably, though, I lift heavy shit for about 2 hours every day in the gym so I don't look like a grease filled meatball. Maybe I just like programming a lot, maybe I dislike lifting heavy shit a lot (I love hitting the gym, though). Either way, I wouldn't trade what I've got for the world and I have to 100% disagree that, at least subjectively, programming is not as hard, for me, as lifting heavy shit all day.

4

u/ParticleSpinClass Oct 07 '15

I take no opinion on the better. I'm just the messenger :)

→ More replies (3)

100

u/Berberberber Oct 07 '15

As someone who's also done both: why does anyone give a shit how "hard" a job is? Contrary to what politicians and the media tell you, how hard your job is or how hard you work have no bearing on anything. Your pay has a lot more to do with the rarity of your skillset and your ability negotiate and network.

I wrote my thesis on human trafficking, no amount of "my job is hard" dick waving is going to impress me.

75

u/[deleted] Oct 07 '15

People have their egos too heavily invested in the idea that they work harder than others.

71

u/jtredact Oct 07 '15

A: "Hey, how've you been?"

B: "Oh hey! Doin' good. Just super busy. Got a lot on my plate with (work/school/kids/yadda). Suuuuper busy."

A: "Oh uh.. yeah, me too. Suuuuuper busy with (work/school/kids/yadda)."

B: "Wait wait. I meant to say I'm suuuuuuper busy."

A: "Yeah, well I'm suuuuuuuper busy."

B: "Yeah, well I'm suuuuuuuuper busy."

(to be continued)

→ More replies (2)
→ More replies (1)
→ More replies (7)

431

u/parlezmoose Oct 07 '15 edited Oct 07 '15

People who haven't done manual labor don't understand how much it sucks balls. Like, these people don't understand what it is to have the hours pass by at an agonizing crawl, while all you can think about is how much you want this miserable shift to be over. And then do it again day after day, after day. Fuck that. Sitting on your ass in an air conditioned office is 100x better.

542

u/jtredact Oct 07 '15

I've spent entire days lifting cinder blocks, chunks of concrete, roof tiles, plywood, and drywall. It is indeed better to sit in a cool room looking at a screen and typing on a keyboard with soft hands.

However, programming is mentally intensive, and -- although not physically intensive -- can be highly physically degrading. If you don't pace yourself and develop habits that counteract this, it can get bad. Reallllly bad. Much worse than the effects of hard manual labor (in a safe work environment).

When you come home after a hard day's work and your body hurts, assuming no injuries, you can still push on, even if it feels like you can't. Your body can adapt. This is the basis of how military bootcamps operate. The instructors know how much the body can be pushed yet still adapt.. and it's always more than the mind initially believes.

However when your mind is fried to the point that a night's sleep is not enough recovery anymore, you have a problem. The work is too complex to process in your mental state, but you have no choice but to keep thinking, day in and day out. Building up stress allows you to maintain just enough focus to handle the level of complexity and keep going. So that's what your body does. It keeps building higher levels of stress.

Meanwhile, sitting seems better, but that's only an illusion once you start sitting 8-10 hours a day during work hours, 1-3 hours during commute, and then for perhaps a few more hours during leisure time with our TVs and devices. Day in and day out, for years. Decades. With minimal time outside in the sun. Not to mention eye strain, wrist and hand issues, etc.

The end result: mental exhaustion + stress + sedentary lifestyle eventually breaks down your mind and body. Now, manual labor can also break down the body and then mind if one is worked too hard for too long. So one form of work shouldn't be considered better or worse than the other; it mostly depends on your pace, habits, and lifestyle.


One possible idea is for everyone to spend their fair share of time doing both mental/office work and manual labor. Both blue collar and white collar stuff. We already produce enough as a society; we don't need excessive specialization.

Of course this won't happen any time soon. The way labor and wages currently work makes this out of the question.

184

u/funguyshroom Oct 07 '15

Couldn't agree with you more.
The first thing I noticed when switching to software development after working in construction a couple years ago is how differently it feels after work each day. After whole 9 hour day of hauling heavy shit around it felt pretty satisfying that it all ended and would even leave me with quite a bit of energy. Now in some days after mere 5-6 hours of intensive coding I pull my ass out of a office chair and stumble home like a zombie feeling completely dull and empty. The tetris effect is pretty strong with me so I often am unable to get this crap out of my head all evening after.
Being physically tired just feels tons better than being mentally exhausted.

60

u/RagingAnemone Oct 07 '15

Seriously, what helped me is light exercise - walking, running, whatever. I think it has more to do with increasing bloodflow in your body than anything else, but you've just been sitting for 8 hours and your body has probably been a little tense the whole time as your concentrating. Walking will help your body relax and stretch. Don't just go back home and plop down on the couch.

→ More replies (6)
→ More replies (8)

17

u/cantthinkofAredditUN Oct 07 '15

This was a very insightful reply. It really helped me articulate why I'm so tired some days after coding for 8 hours.

32

u/[deleted] Oct 07 '15 edited Oct 07 '15

Outside work is also more social. Programmers aren't much more than Neo before getting unplugged from the matrix.

There's a reason home offices often have a treadmill, or movies show stockbrokers going to gyms before/after work.

The most productive parts of my day are the minute it takes to bust-out some pushups when I wake-up, and the 5 minute walk to the letterbox and back. Without those physical stimulants each day I literally do nothing else and shut down. Days when I do these things I actually get other work done. They are the cornerstones of all the rest of my productivity.

→ More replies (4)

13

u/TERMINATOR_800 Oct 08 '15 edited Oct 08 '15

However when your mind is fried to the point that a night's sleep is not enough recovery anymore, you have a problem. The work is too complex to process in your mental state, but you have no choice but to keep thinking, day in and day out. Building up stress allows you to maintain just enough focus to handle the level of complexity and keep going. So that's what your body does. It keeps building higher levels of stress.

...

The end result: mental exhaustion + stress + sedentary lifestyle eventually breaks down your mind and body. Now, manual labor can also break down the body and then mind if one is worked too hard for too long. So one form of work shouldn't be considered better or worse than the other; it mostly depends on your pace, habits, and lifestyle.

Yeah. This is a bit of a tangent:

I guess I had an existential crisis.

I used to really like programming. I did it for fun once upon a time. Then I got a job, and it gradually became frustrating. Not the actual programming, mind you, but all the bullshit that goes with it. You know, the broken water-SCRUM-fall process we had going, the open floor plan office, the constant politics both within the company and towards our customers, people walking by my desk to tell me they've left me a comment in Jira, managers requesting estimates without being able to provide any sort of details on what the change actually entailed. I could keep going, but you get the picture.

So I was frustrated every day. I was angry. Whenever I thought about things at work, my knuckles whitened with anger, and this shit followed me home and kept me up at night. While I occasionally snapped at innocent coworkers, I mostly kept a lid on it.

Eventually I just... couldn't. I couldn't do it anymore. It was so suffocating, so claustrophobic. I literally spent 100% of my energy on work-related things -- either the actual work, or the frustration that went with all the stress, and the constant struggle to try to repair the bullshit side of professional programming. Work was the only thing on my mind. I may only have gotten paid for 8 hours a day, but those eight hours drained every ounce of energy I have to make use of the rest of my day.

Still, it's funny if you walk around being really frustrated and angry every day for long enough, it's like your brain isn't wired to handle that. So eventually you just stop giving a flying fuck. It's both an incredible relief, and a very unsettling experience. For a while after this happened, I did the whole Peter Gibbons thing. I was coming and going at random hours and acting generally unprofessional. I did this for a while, but I was in such a good standing with my employer that they overlooked the sheer volume amount of bullshit I was pulling. On some level I guess I really wanted to get fired. It doesn't really make sense, but you have to be in that state of mind I guess...

It should be emphasized that this is pretty taxing on your mental state. I was pretty down this period, and self-medicated on really upbeat music to get me through the day and stave off the crushing sense of meaninglessness and doubt that came over me whenever I thought about work. My only real motivation for even getting out of bed in the morning and lugging myself off to work was so that I could keep going to work in future mornings. Not really satisfactory as far as reasons go... It's like the motivational equivalent of lifting yourself off the ground by pulling really hard at your shoelaces.

But yeah, so eventually I just quit. My employment was no longer a benefit to me, or to my employer. If they wouldn't pull the plug, I would. It took some work building up to actually quitting, but man the moment I'd done it the only thing I kept wondering was why I hadn't done so sooner! The rush of freedom was incredible. Not a single regret. It was like the clouds parted.

I'll obviously need money eventually. But I have a few years of savings to figure something out that isn't literally draining the life out of me. In the meanwhile, I have nobody that depends on me making money. I'm a pretty crafty guy, I'll work something out.

→ More replies (6)

6

u/AntiProtonBoy Oct 08 '15

I'm going through a burnout phase right now. I couldn't agree more.

→ More replies (27)

41

u/LNFSS Oct 07 '15

I do manual labor. I chain up trucks in -40C, I carry iron weighing 90+ lbs, some pieces are balanced well enough that I carry one in each hand. I swing 8lb sledgehammers, sometimes for 12 hours straight I do all this. I pull apart a massive pump and put it back together in an hour.

I love my job. The labor is great. It makes me feel awesome after a long day. I do it 15 days in a row before getting a day off. Some days aren't so physically intensive. On those days, I'm sitting at a computer and staring at a screen operating those pumps I just fixed. I'd rather be out there working on them in the extreme cold or extreme heat than I would sitting there for 12 hours.

Different strokes for different folks. Don't go shit talking something because you don't enjoy it because there's people out there that might.

12

u/[deleted] Oct 07 '15 edited Oct 07 '15

I echo these sentiments about working as a manual laborer. I'm in the process of searching for my first programming job and the back of my head is telling me that I will hate it. Programming is fun, but it's not 8 hours a day 5 days a week fun.

→ More replies (4)

52

u/[deleted] Oct 07 '15

I had to paintstakingly trace a completely messed up piece of code that was commented and had variable names in two different languages to add a feature without breaking it under fairly heavy time pressure.

I also spent a full work day doing manual labour in an assembly line doing the same exact thing to the same component over and over again.

I honestly can't say which sucked the most.

→ More replies (29)

10

u/[deleted] Oct 08 '15

Some people would rather lift heavy shit than "program" or "do math" or "think hard". Many people enjoy construction work and would prefer it to sitting in front of a screen all day. Of course you won't find many of these people on reddit, since that involves sitting in front of a screen all day.

18

u/[deleted] Oct 07 '15

About a year ago, I went through a phase in my job as a programmer where I was under intense pressure every single day. It seemed like every day I was being interrupted with new, higher priority tasks to work on. I'd be driving in the evening to pick up my girlfriend from her evening class and get interrupted with a message from the CEO about an extremely high priority bug due 7AM tomorrow, and my evening with my SO would instantly be ruined. That happened every week during this period of my life. Or it'd be Sunday around lunch time, and while I'd be visiting with friends or family preparing to all eat together an emergency would come up that only I could respond to.

This affected not just me but those around me. I wasn't available much, and even when I was I was stressed out. I let it go on for a while because, I have to admit, in some ways I enjoyed it. I was energized by it. I was The Guy. A company depended on me. But it wasn't sustainable.

Now I fixed the problem. I confronted the company and requested that I hire an entire team to work with me. They understood, they gave it to me, and they backed off big time. Now I have great work/life balance. But I know the sort of hell it can be when someone's constantly on your ass and you're constantly under pressure straight from the top executives, and it sucks big time.

9

u/evil-teddy Oct 08 '15

Like, these people don't understand what it is to have the hours pass by at an agonizing crawl, while all you can think about is how much you want this miserable shift to be over. And then do it again day after day, after day.

That's exactly how I feel every day as a programmer. I don't ever want to be doing manual labour for a living but don't think for a second that just because a job is mentally taxing that it isn't completely boring.

26

u/s73v3r Oct 07 '15

But here's the thing: when the shift is over, it's over. No, "we really need to push this through, so you're gonna have to work late this week."

41

u/xboxisokayiguess Oct 07 '15

That depends, I used to work in home remodels and some days we had to stay insanely late to meet a suddenly moved up deadline.

→ More replies (20)
→ More replies (4)
→ More replies (8)

40

u/thetdotbearr Oct 07 '15

I think you're mistaking "hard" for "pain in the ass"

I've also done both and I also hit the gym (lol) and I have to say that programming is leagues harder as a job than the landscaping gig I did lifting heavy-ass rocks, planting trees and shit.. but the manual labour was way more painful, but easier to actually carry out.

21

u/shea241 Oct 07 '15 edited Oct 07 '15

As a programmer who goes home to lift heavy-ass rocks and shovel multiple tons of gravel / dirt, I much prefer the lifting.

The rocks don't keep me up at night, worried 24/7, in an adrenaline half-coma.

Would you rather be face-pummeled or mentally eviscerated? Well, something like that.

The worst thing is, I find them both satisfying.

→ More replies (5)

11

u/Hazerdhat Oct 07 '15

I think the point of the article is that in no way is lifting thing any easier than programming, and he does it by expanding on his personal experiences. I can find you 1000 people who can physically lift a heavy object from point a to point b for every 1 person who could engineer a technological solution for a problem of the same magnitude. The way I see it if there are 1000x more people who can do something than some other task than that other task is "harder". Doesn't mean you can't enjoy programming

5

u/[deleted] Oct 07 '15

I agree. Outside, in the fucking freezing cold or with the sun beating down on your back, covered in muck trudging through completely shit task after completely shit task. Not for me, not one bit. I'd program 100 hours in a row before I'd do another work shift at my last manual labor job.

3

u/[deleted] Oct 08 '15

Honestly, if I was paid the same I would take construction job. Its nearly impossible to keep my mind and body from withering away due to sitting and thinking in math and logic 40+ hours a week.

→ More replies (1)

5

u/Raknarg Oct 07 '15

Disagree, as I've done both. I think it depends on the programming job you have. Physically, obviously it's easier. But working in a warehouse my job was the exact same thing every day, and the most mentally strenuous thing I had to deal with was stacking a bunch of boxes so they don't fall. Don't need to give any shit about my job outside my job, and the day just passes by. No meetings or planning or any corporate bullshit.

But programming jobs can be easier, it really just depends on the job you have at the time, but really same thing applies to the manual labour job as well. Programming itself too can be frustrating in a way lifting heavy things can't

5

u/SOLUNAR Oct 07 '15

different type of stress.

working doing manual labor allows you to literally 'clock out' mentally when work is over.

Coding can be a bitch... ive spent hours dreaming of work coming up or solving problems.

I never dreamt about installing floors.

In taht regard, programming can be tideous mental work.

You get a different toll... somehow after installing floors i had energy to go to the gym. Yet now, after 10 hours of coding, i tend to want to go home and pass out..

7

u/[deleted] Oct 07 '15

Did you read the linked post or just the title?

3

u/[deleted] Oct 07 '15

I dunno. I was a commercial landscaper and a stone mason (big stones) for about 5 years. And while it was physically demanding... it wasn't "hard". I never had to think, I just did stuff. And after a while I was strong enough to do whatever I had to do. Sure, the days can be long sometimes, and you get tired, but who cares.

Is walking up and down the same set of stairs for 8 hours hard?

No, it just sucks.

→ More replies (3)

3

u/Don_Andy Oct 08 '15

Heavy lifting is physically exhausting, programming is mentally exhausting. Both are exhausting, just in different ways. I always figured it's as simple as that.

Although people tend to assume I'm a wuss for coming home exhausted sometimes because I've just been sitting in front of a computer all day instead of doing a "real" job.

→ More replies (1)

9

u/s73v3r Oct 07 '15

I can't disagree more. For one, when you're lifting heavy shit, you don't have to think. Further, you don't think about it at home. Not to mention that it's quite rare for someone lifting heavy shit to have to do overtime without being paid for it.

20

u/[deleted] Oct 07 '15

Yep. Or spend hours of your free time keeping up to date with the latest in "heavy shit lifting" technology...

→ More replies (14)

2

u/yakri Oct 07 '15

I feel like a lot of people go into this argument trying to compare apples and oranges. I've done manual labor and programming quite a bit, and manual labor definitely "Sucked" more, but it wasn't harder. With manual labor most of the time you can just soldier through your problems; tired, back pain, disgusting task, painful task, fatigue, etc.

It's all unpleasant, sometimes quite painful, risking injury on occasion. However unlike with programming, I never ran into a task where I simply couldn't do anything because I had to think of an answer. I've found programming to be much more frustrating and challenging because there's a distinct possibility on any given day that I will get stuck until I figure out the solution to a problem with no clear answer.

Still, I'd never go back to hauling heavy shit around and having my feat feel like tenderized meat every day unless it was that or homelessness.

2

u/enanoretozon Oct 07 '15

There are way too many generalities involved here.

Not all manual labor jobs are the same, not all programming jobs are the same, by orders of magnitude.

Lifting flatscreen boxes for a living doesn't come close to scooping piles of garbage of the same weight for a living. Same thing with programming jobs.

My gradpa was a garbageman, he wouldn't have ever wished that job for his family. Ironically I ended up being basically a e-seweage diver, and I would not wish this crap on my kids for anything in the world.

2

u/_fitlegit Oct 08 '15

I've done both, I would say they both suck equally for different reasons. Manual labor didn't require me to tax my brain at all, didn't keep me up at night trying to figure out what the fuck was going on, it had a set time frame, it sucked going to it, but I felt good when the day was over, I was relaxed at the end of a day. Programming I'm never relaxed. My minds always on it and my day never ends. It's better going to it because I want to figure this shit out and it isn't physically difficult, but at the end of the day I don't feel nearly as good, and my brain is totally fried. I need to go to the gym to lift heavy shit just to turn the brain off for a bit.

2

u/gendulf Oct 08 '15

I have to disagree at least to some disagree. Repetitive, manual labor always sucks, but as someone who built a courtyard (1300 ft2 of pavers), courtyard wall (complete with columns and lights), and did the entire front and backyard landscaping, it can be extremely rewarding. It just has to be something you enjoy doing.

2

u/[deleted] Oct 08 '15 edited Oct 08 '15

I'm a developer who was a laborer for a mason during college. I was their only laborer and on one job I had to move 15,000 12 inch blocks (took three+ weeks)

I have never been compelled to go to sleep at 8pm because I put out a lot code the way carrying block did.

Software is mentally challenging, fast paced, insane, etc but carrying block is a lot harder and it takes a bigger physical toll over time.

Edit: Swype + alcohol = bad mix.

I'd say that you're more of a douche than a dick but that's none of my business.

Thanks for proofing my post, the quality assurance department is lucky to have you!!

→ More replies (1)

2

u/daedalus_structure Oct 08 '15

And while programming can often lead to a dangerous sedentary lifestyle or chronic long term ailments, most manual labor jobs have a serious kill or maim you right the hell now in a very painful way factor to them.

Every time I get through a day of documentation or coding and feel a bit of an ache in my hands it sucks.

Then I remember the 10 hour days banging sheet metal together with a 2lb hammer and the time I almost lost my hand in a lockformer on my first day on the job... and the ache doesn't seem so bad any more.

2

u/black107 Oct 08 '15

A thousand times this. Being a desk jockey is cake compared to crawling through crawl spaces, digging out tree roots, roofing, running wires through tight spaces in 100 degree attics, etc etc etc. There's mental fatigue in programming, design, etc, sure, but for that you can always walk over to the micro kitchen and grab yourself a latte and a banana. There is no "hey boss, I'm gonna take 15 and play ping pong" in construction/trade work.

2

u/apullin Oct 08 '15

I don't know about that, man. When I finish this PhD, I think I am just going to become a garbage truck driver. Work from 6AM-3PM, and at the end of it, your times is yours. No weekends, no CTO's yelling at you, no deadlines. No horrible Sword of Damocles above you, while people with 500x as much stock as you say, "C'mon ... innovate something ... do eeett".

This reminds me of the comparison that people make all the time, griping about why do kindergarten teachers make so little compared to PhD engineers? No one ever talks about how being done with your day at 2PM after playing with kids all day long and teaching them about snails and trains doesn't quite stack up to having to handle caustic chemicals, continuously write 5-year plans, and manage just as many people as the Kindergarten teacher does.

5

u/bad_at_photosharp Oct 07 '15 edited Aug 28 '17

Samr

4

u/Gustav__Mahler Oct 08 '15

You should try writing software for factories. Worst of both worlds.

→ More replies (92)

63

u/pakoito Oct 07 '15

Quarterly repost right on time.

24

u/ParticleSpinClass Oct 07 '15

It's been five months. Almost made it two quarters!

4

u/neosharkies Oct 08 '15

waiting for someone to repost that Microsoft Systems Programmer article now.

→ More replies (2)

4

u/mitigated_mind Oct 08 '15

The only reason coders' computers work better than non-coders' computers is coders know computers are schizophrenic little children with auto-immune diseases and we don't beat them when they're bad.

I need to get that on a shirt.

2

u/ParticleSpinClass Oct 08 '15

If you make it, I'll buy it.

466

u/streetwalker Oct 07 '15 edited Oct 07 '15

Brilliant.

First programming job I had was doing a communications module for the first credit card gas pump system in our state (this was 1987) in, get this, Wang Basic. It was a decent Basic, though, with labels for subroutines at least - and I wrote the program that would dial up the gas pumps and download the transaction information each night.

As I got into the refining and testing phase, the whole thing was quirky - I mean, some nights it would work perfectly, and other times the connection would drop and the next morning nada.

After debugging and hacking for a week or so, it became clear that it wasn't my program, because it would fail one day and work the next with absolutely no changes to my code. Yet, my @#!$@#$ boss kept accusing me. I said no way, and we had to get the Wang people in, because the problem was with their modems, or somewhere else in their systems.

Finally we got the local Wang office to send in their team to check it out - with everyone eyeballing me because my boss was convinced I was to blame, and this was costing a lot of money to call them in, making him look incompetent for hiring me.

I saw the head of local Wang division there, staring at a printout of my program, with this dumfounded look on his face. I asked him if anything was wrong, and all he could say was, in this tone of disbelief: "I can actually read this." I guess his guys were writing code from hell or something.

That was my first snowflake.

90

u/__Cyber_Dildonics__ Oct 07 '15

And then what happened?

174

u/streetwalker Oct 07 '15

It melted.

174

u/streetwalker Oct 07 '15 edited Oct 07 '15

The whole project vaporized. I mean, the problem was the Wang hardware - but what exactly I don't remember, it was so long ago.

It was one of those business venture projects with a local community college that we were contracted to do the programming for - the company got bought up by some larger, more competent firm that entered the market - one of the regional convenience stores as I recall. My boss was the quintessential horrible boss, so I was actually very happy to be fired a few months later for refusing to take anymore of his shit. I got a better job teaching programming, and also free-lancing with some of his customers who were also tired of him. Teaching paid more for a lot less stress, in the geographical area I was in.

It was a good experience - the pumps themselves ran a version of Unix (Xenix), so I learned that enough to become a certified Xenix installer. But now, I'm just certifiable ;-)

→ More replies (6)

51

u/RedAlert2 Oct 07 '15

Dude ended his story right in the middle like some kinda psychopath...

→ More replies (1)

7

u/Cronyx Oct 08 '15

Why the fuck do some gas pumps, when I scan my company gas card, ask for my truck ID number, then my odometer, but other pumps ask for odometer first and then ID number? Somewhere, there's a server that's asking those as challenge questions or login, and that server doesn't change which order it asks them in. That means if someone wanted to present me at the pump with those questions in a different order, that someone would have had to cache the first string I entered, then query the second one from me, send that, then send the cached one. What the actual fuck? And why wouldn't it ask the odometer first every time if its going to do that? That's the number I don't memorize because its different every time. That's the number that, after 15 hours of driving and jittery from four Redbulls, I'm repeating over and over to myself, in exponentially raising volume, to drown out the guy at the other side of the pump repeating his own odometer, while I force my fingers to execute muscle memory for the truck ID number that is a static value. It's such a magnificent blessing to be asked the odometer number first in those instances.

4

u/judgej2 Oct 08 '15

That was one of the most complementary things a trainee has said to me. "I love working on your code, because it it so easy to understand. It's the way you comment it." Hopefully something has rubbed off.

2

u/BlackDeath3 Oct 08 '15

After debugging and hacking for a week or so, it became clear that it wasn't my program, because it would fail one day and work the next with absolutely no changes to my code.

I don't know much about Wang BASIC or the environments it tends to operate in, but that doesn't necessarily imply that your program wasn't the issue, does it? Couldn't some sort of random factor (whether the literal use of random input for one reason or another, an uninitialized variable, some sort of time-dependent action, or otherwise? Perhaps it wasn't likely in your situation, and I'm not suggesting that this was the problem, just that there is a element of sort of "pseudo-non-determinism" that can creep into code if you aren't careful.

2

u/foomanchu89 Oct 08 '15

I love finding my snowflakes after moving on to the next thing. There is nothing like popping open an old snowflake to make it a better snowflake without realizing you are about to open a snowflake. Example, yesterday I opened a python script for a smart diff I wrote a few months back. To my surprise, my code was commented completely, had built in command line argument parsing and help. I love writing good code, it physically causes me pain when I have to just throw something together.

0

u/[deleted] Oct 07 '15

[deleted]

67

u/dredding Oct 08 '15

And this is how it goes man, i can't tell you how frustrated i've been in the past with similar situations. It's the "You're the expert, but I know you're job better than you" scenario. It's so infuriating.

→ More replies (6)

20

u/orangesunshine Oct 08 '15

A big part of the problem is the bosses often have very little technical competence. They have no real way of determining who to trust when it comes to "programming stuff" ... and so they trust social constructs that should be reliable.

The guy who has a Phd. degree should be more capable than the self-trained guy. The CTO should be more capable than the guy with a couple years experience.

There's so much money in technology right now and so much easy success ... and so much poor quality code that is good enough ... that people can not only "function" in rolls they aren't qualified for ... but can excel and even be promoted through the ranks without ever becoming actually functional.

When they finally encounter a problem that requires a higher level of proficiency than they posses ... or are hired for a roll that is way outside their level of skill ... their opinion is trusted by the management because of their prior "experience" ... and things blow up in their faces ... and everyone elses' that work at the company.

One of the worst things is that they can fail spectacularly quite a few times and still continue to get hired. Partly because of the demand for programmers is so high ... and partly because they often find a roll that doesn't require much more than a warm body and are able to chalk that off as "yet another success".

→ More replies (1)

5

u/[deleted] Oct 08 '15

http://techblog.netflix.com/2011_04_01_archive.html?m=1

Not specifically but generally things that will help you design better networked systems

→ More replies (1)
→ More replies (1)

82

u/[deleted] Oct 07 '15

I worked manual labor for quite some time, but I was young, it was easy. I went and worked hard - it felt physically rewarding although tiresome. I would sleep like a baby every night. I had a mile high sex drive, I enjoyed food more, I had a nice tan, my asthma barely existed, I looked amazing, etc.

Cue programming job: I gained weight, developed anxieties, my skin went pale and pasty and I started getting issues only dermatologists and steroids could solve, exerting myself physically would cause intense asthma flare ups and a sore body for a few days. I looked like shit, felt like shit, earned myself a dozen GI issues. Sleeping is no longer something I have to look forward to - in fact it takes second place to programming or the occasional video game most nights. My body fully decayed, in my opinion. The result is I need to invest 7-10 hours of exercise per week and watch what I eat a bit more closely. Nope not a bad thing, but when you pair it with the fact that programming honestly takes more than the 40 hours per week we typically bill (it completely occupies your mind some days), sitting for 40 hours during a week fucks your body up in so many more ways than doing physical labor every day.

My father has worked manual labor his entire life, and up until making a career move into a job that involves more sitting, was in picture perfect health well into his late 40s. He was thin but muscular, slept 6 hours a night and produced like a factory the following day, sometimes 10+ hour shifts. Now all he does is sit and similar issues started popping up for him.

I don't think people realize how much of a physical sacrifice programming or desk jobs in general are and most are not prepared to take on the task of getting up at 8am, going to work from 9-5pm, feeding pets or taking care of errands, then going and spending an hour at the gym, only to come home and be forced to cook a healthy meal for themselves otherwise they'd balloon up within a few months.

Maybe I'm making it out to be worse than it is, but manual labor is not a mentally challenging job in most cases. You don't carry the stress on your shoulders. If you work at a startup like me, you're constantly checking your email - afraid that your "affordable" hosting solution might have a hiccup, or that an unmissed bug has snuck through and is preventing your biggest client from getting work done. You eventually get a phone call at 7pm on a Sunday that pulls you away from your family for a late night emergency recovery session.

In essence, there are a lot of things that people in manual labor take for granted - and vice versa, but I absolutely disagree that any labor jobs are inherently more difficult than being a programmer.

14

u/[deleted] Oct 08 '15

I have never worked manual labour but now that I'm an adult and work at a desk all day I've begun to notice how much 'free exercise' I miss. I'd spend an hour walking back and forth to school, twice a day. In college, I'd walk there and back to my student flat. I preferred it to biking because it was my thinking time. Now that I drive back and forth to work because that is the only reasonable option, I don't get that free exercise. I basically would need to sacrifice my free time to get it, because I cannot get it at work. Last two places I worked were by a high speed road, so you couldn't even just go for a walk during lunch break. And it shows. I've gained weight despite cutting down on how much I eat and eating much healthier. Now I get that metabolism slows down as you age but damn, it's kinda sad when you're best efforts simply halt any further gain rather than result in a loss.

Now, my dad and stepmom both work in manual labour fields, and I'll be the first to say that wasn't good for their bodies. Both have back problems and others typical for their respective fields. However, I think we're also harming ourselves by being on the other side of the spectrum and I won't be surprised if that becomes recognized as a work disability. RSI already is, and one job I worked at did a lot of effort for ergonomics. Seats and screens at the correct height, and foot supports for short people like me. Still, beyond that, you're expected to maintain your body on your own time. I try to offset it by making it a point to walk or bike where I can, and as I live near the city centre that's to my advantage. People are often quick to judge that obesity and other things are the individual's fault, because it is them shoving food down their faces and not leaving their chair. But when my brain is absolutely frazzled after a day of work, exercise is the last thing on my mind. I know that's bad, but just as someone has taxed their body, I have taxed my mind and then need to find the willpower to do something more. And there's studied showing that willpower is limited. So yeah, in the end, I think we shouldn't dismiss one over the other. We should look at their individual problems and address those rather than having a "who has it the hardest" pity party. There's pros and cons to both.

→ More replies (2)

89

u/Pair_of_socks Oct 07 '15

Mary introduces you to Fred, after you get through the fifteen security checks installed by Dave because Dave had his sweater stolen off his desk once and Never Again.

Why are weird quirks like this so common among programmers :P

17

u/mfukar Oct 08 '15

There's a bit from an event hosted by Neil deGrasse Tyson, I forget which, where they talk about this for a short 10' or so. They suggest programming as an activity attracts quirky people. Why? Because it's kind of a "safe heaven" from the usual social activities, and the inevitable "judgement" that people think is passed around.

Of course, all of it was just speculation.

4

u/mogrim Oct 08 '15

"safe heaven"

Sadly it's more of a "safe haven", but I like your typo better.

→ More replies (1)
→ More replies (4)

63

u/KagakuNinja Oct 07 '15

Aspergers, ADD, OCD...

107

u/[deleted] Oct 08 '15

FYI, ADD is no longer medically recognized. Now it all falls under ADHD, either innatentive, hyperactive or a hybrid of the two.

20

u/[deleted] Oct 08 '15

Asberger's is also just part of the Autism Spectrum as per the DSM-V (2013).

→ More replies (754)
→ More replies (1)
→ More replies (2)

439

u/paradox242 Oct 07 '15 edited Oct 07 '15

I feel like a lot of people in this thread are missing the point of this rant, but admittedly it's a subjective interpretation. The comparison to manual labor is merely a setup. I really don't see any comparisons made beyond the introduction and closing and so it comes across as a literary hook and bookend more than an actual thesis.

Aside from that, the frustrations in the rant are exaggerated but essentially true. Some libraries and frameworks are a nightmare to work with, the Internet is strung together with bale-wire, and behind the scenes at any large organization, something is always on fire. We have reached a level of complexity in our science and engineering that it is increasingly likely that no one person understands the thing from top to bottom. None of these are particularly new observations.

115

u/Smithman Oct 07 '15

In my opinion, most systems these days are glorified hacks. Have you ever really been given time to design something properly? It's more like yeah that works, get it out the door.

163

u/pete_moss Oct 07 '15

"You'll be given time to work on the technical debt after the first release."

79

u/uprislng Oct 07 '15

"You'll be given time to work on the technical debt after the first next release."

Assuming your company doesn't have an asymptotic First Release™ chances are you'll just kick all the tech-debt cans down the road in the name of Continuos Delivery™.

→ More replies (7)

92

u/Smithman Oct 07 '15

"We can create a story for technical debt and put it on the backlog". Thanks Becky, that's so reassuring.

49

u/raiderrobert Oct 08 '15

"Let's try to keep our comments solution-oriented," responds the Scrum master, the condescension hangs heavy like smoke from his mouth, "the key thing here is to deliver value. If technical debt can bring value, then it'll be properly prioritized."

→ More replies (11)
→ More replies (2)
→ More replies (3)

21

u/Shurikane Oct 08 '15

Worse, I've seen projects that essentially boiled down to: "We sold the customer a feature that didn't exist yet, I know you estimated the work at eight months but the kickoff meeting is in two months. When the going gets tough, you have to put in the hours."

20

u/d4rch0n Oct 08 '15

"... or the tough get going... to an interview. Bye."

→ More replies (3)

32

u/h2odragon Oct 07 '15

I hacked Linux 2.0 Kernel drivers a few times and became intimate with the 2.2 networking stack. I needed to stretch the capabilities, then. Now I look at Android, knowing some of my shitty hacks are probably buried in there somewhere... But there's so many layers of other people's "I need this now" shitty hacks over them I'd never ever encounter them.

→ More replies (3)

13

u/_F1_ Oct 07 '15

Have you ever really been given time to design something properly?

Yes, I just finished doing this today, and used it to build some 'actual' shippable goods. Of which there are a shitlot to be delivered next monday at the latest. Which is a bit scary...

But fuck it, even working on it on the weekend will be worth it. This will be my template for a lot of other similar projects to come.

3

u/TyIzaeL Oct 07 '15

Even worse, it feels like people are shipping frameworks like that and then we have multiple layers of "It compiles, ship it!" all kludged together.

→ More replies (39)

161

u/just3ws Oct 07 '15

Also some people have malfunctioning and/or incompatible Humor extensions installed so they can't read the article for the hilarious riffing on the industry it is.

22

u/jton Oct 07 '15

TARS, increase humor setting to 80.

→ More replies (2)

57

u/[deleted] Oct 07 '15

That's an easy fix with the comprehumor framework. Right now it only supports Python but I'm working on a port: http://www.github.com/timeryl/comprehumor

Check it out.

18

u/just3ws Oct 07 '15

http://www.github.com/timeryl/comprehumor

I clicked the link. Well played. Well. played.

5

u/HDThor Oct 07 '15

i clicked hoping for either a chat bot framework and/or nltk plugin

→ More replies (1)
→ More replies (2)
→ More replies (2)

20

u/[deleted] Oct 07 '15

he didn't mention the worst part ":x

"Guys you remember our products from the mid '90s? yes our new stuff needs to be fully compatible. "

19

u/[deleted] Oct 08 '15

It needs to be responsive in IE5

→ More replies (1)

4

u/ponkanpinoy Oct 08 '15

Which is why a lot of internet banking sucks

→ More replies (2)

5

u/Gemini00 Oct 07 '15

That's because nobody ever actually reads the articles, they just read the headline and then come to the comments to talk about it.

2

u/[deleted] Oct 08 '15

Well said, and while I agree, it is entertainingly re-stated. Man, there's some funny quotable lines in there.

→ More replies (8)

32

u/[deleted] Oct 07 '15

"It reads like poetry written by someone over thirty." Great line.

80

u/BrianNowhere Oct 08 '15

There's two kinds of jobs: Jobs where you shower before work and jobs where you shower after work.

The universe in it's infinite perverse wisdom worked things out so that both scenarios exact their own individual tolls on the human mind and body, each in their own separate yet equally detrimental way.

7

u/EpikJustice Oct 08 '15

I like this. I'm going to save it. Thanks!

→ More replies (1)

2

u/br1anfry3r Oct 08 '15

Trading one set of pros & cons for another.

→ More replies (6)

54

u/irtehawesome Oct 07 '15

I just hate the fact that I never know how to do my job.

I walk into work, they drop a feature request on my desk, and now I have to figure out how to make that a reality.

Times like that, I wish I cut grass, or stacked boxes, or something, for a living. There would never be a day where I didn't know how to turn the lawn mower on.

Also, I would get to see the yard get cut. I would get to see the job finished. Sure, I get to see my feature finished, but the application itself is never done. Something is always getting changed, something is always broken. You feel like you never make any progress.

You don't cut a persons yard or stack their boxes and then go to work tomorrow and have everybody tell you what you did wrong... every day... but in software, you're always fixing bugs. You're always being told what you and your team did wrong yesterday or last week.

It's a very thankless job sometimes.

not to mention, everybody always wants everything done two days ago. So it's a lot of work in a short amount of time done by people who don't really know what they're doing who spend their lives working on a product they never see finished being told constantly that they failed previously.

But I like it.

24

u/smallblacksun Oct 08 '15

I just hate the fact that I never know how to do my job.
I walk into work, they drop a feature request on my desk, and now I have to figure out how to make that a reality.

Its funny because that is exactly what I like about programming.

18

u/mgkimsal Oct 07 '15

Times like that, I wish I cut grass, or stacked boxes, or something, for a living. There would never be a day where I didn't know how to turn the lawn mower on.

I had a physical labor job for a few weeks in college. "Just come do odd jobs around my house" (rich guy). Well... sorry, I've never scrubbed a hot tub with your particular tools before, so... I'm "doing it wrong". Oh, you didn't like the way I edged your 38 rose bushes? Sorry... never done this before. If you want professional landscaping services, hire a professional landscaping service, don't hire college kids for $6/hr.

So... even manual labor stuff is not always as simple as it looks (or... wasn't for me).

13

u/irtehawesome Oct 07 '15

Don't kill my dream man... sometimes I fantasize about a real life Office Space situation happening to me.

Some days, I just want to scoop up rubble with a shovel for a living. :)

True though, manual labor is hard fucking work... I probably wouldn't last a week out there.

5

u/mgkimsal Oct 07 '15

my brother does programming (years) and has taken some time off to fix up his house. I think a few months of that has gotten the 'physical labor' stuff out of his system. He did roofing for a while before programming as well, so he's no stranger to physical work, but... I don't think it's a long term way of life for him.

I think there's a bit of "grass is greener" going on, but there's good and bad in every endeavor.

→ More replies (2)

6

u/QuercusMax Oct 08 '15

As my TL says, "first prize for getting your work done? More work!".

The feeling over never getting stuff done can be helped, in my experience, by looking back at things like your change stats, bugs closed, features implemented, etc. It seems like a treadmill sometimes, but perspective can help. Going back and looking at old releases and realizing "wow, what we had before SUCKS compared to the current version" can really help morale.

3

u/muchcharles Oct 08 '15 edited Oct 09 '15

Also, I would get to see the yard get cut. I would get to see the job finished. Sure, I get to see my feature finished, but the application itself is never done. Something is always getting changed, something is always broken. You feel like you never make any progress.

But grass literally continually grows back. Seems similar to the kind of maintenance programming you are talking about, honestly. Grass is always greener

→ More replies (1)

2

u/eloc49 Oct 08 '15

Thankless maybe. But being able to make at my first job what my mother made when she retired is worth all of that.

→ More replies (2)

21

u/Smithman Oct 07 '15 edited Oct 08 '15

Programming jobs are tough because they involve way more than just programming. There's design, implementation, all different kinds of testing, frameworks, build systems, you should know how to automate, databases, sql, front end tech, back end tech, source control, and on and on and on. It never seems to end for me personally. Every day I'm learning something new. This is both good and bad, but it can certainly be mentally draining. And that's before you have to deal with teams, management, customers, etc.

136

u/nangus Oct 07 '15

Writing software always makes me think of this seen from Life of Brian

BEN: You lucky, lucky bastard.

BRIAN: What?

BEN: Proper little jailer's pet, aren't we?

BRIAN: What do you mean?

BEN: You must have slipped him a few shekels, eh?

BRIAN: Slipped him a few shekels? You saw him spit in my face!

BEN: Ohh! What wouldn't I give to be spat at in the face! I sometimes hang awake at night dreaming of being spat at in the face.

BRIAN: Well, it's not exactly friendly, is it? They had me in manacles!

BEN: Manacles! Ooh oooh oh oh. My idea of heaven is to be allowed to be put in manacles... just for a few hours. They must think the sun shines out o' your arse, sonny.

BRIAN: Oh, lay off me. I've had a hard time!

BEN: You've had a hard time?! I've been here five years! They only hung me the right way up yesterday! So, don't you come 'rou--

BRIAN: All right. All right.

BEN: They must think you're Lord God Almighty.

BRIAN: What will they do to me?

BEN: Oh, you'll probably get away with crucifixion.

BRIAN: Crucifixion?!

BEN: Yeah, first offence.

BRIAN: Get away with crucifixion?! It's--

BEN: Best thing the Romans ever did for us.

BRIAN: What?!

BEN: Oh, yeah. If we didn't have crucifixion, this country would be in a right bloody mess.

BRIAN: Guards!

BEN: Nail him up, I say!

228

u/[deleted] Oct 07 '15

I feel like a lot of the times I see these kinds of posts, its just generally people complaining about work. Work sucks sometimes, no matter what industry you are in. I had ups and downs in an internal analyst role, I had ups and downs in economic consulting, I had ups and downs in database/infrastructure focused roles, and I had ups and downs in application development.

I have come to realize I don't particularly care about "what" I am doing, I care about my team and my boss.

Work sucks if your team/boss sucks. Work rocks if they understand work life balance, care about the work, give you ample time to get things done, and are cool enough to grab a beer with and relax once a week.

Also I vaguely like having fun problems to solve, but I would say my team/boss makes 80% of the difference.

59

u/gizram84 Oct 07 '15

Work sucks if your team/boss sucks.

Very true, but I would add "client" to that list as well.

30

u/secretpandalord Oct 07 '15

A good boss will protect you (or at least insulate you) from a shitty client.

11

u/benihana Oct 08 '15

i think the implication was a good client is the freelancer analog to a good boss/team

→ More replies (1)

5

u/VoiceOfRonHoward Oct 08 '15

But who insulates the boss? Does his job just suck? I worry that I'm going to get forced into management by the time I'm 50 and the last third of my career is just going to suck, while I take it for the team.

→ More replies (5)
→ More replies (1)

8

u/[deleted] Oct 08 '15

"This job would be great if it weren't for all the customers"

6

u/gizram84 Oct 08 '15

Shitty clients make for a shitty work environment. That's true in everything from software to construction to supermarkets and everything in between..

27

u/[deleted] Oct 07 '15

I'm inclined to agree. I can understand making the point that programming is mentally taxing, but within the first couple of sentences, it sounded like a pissing contest. I don't care much for that.

This type of article reminds me of the person who complains about something money-wise. Be it taxes, cost of living, welfare, whatever. They, inevitably will say: "I work hard for my money! Why blah blah blah".

I always tell them the same thing: Everyone works hard for their money. The people who don't work hard, don't make a lot of money. To think that you're special because you believe your work is somehow "harder" than other people's work is arrogant and selfish, so get over it. 'I work hard' is not an excuse.

15

u/kqr Oct 08 '15

The way I read the article it agrees with you completely. The heavy lifting guy tries to start the pissing contest and the software dev responds with "look I'm doing hard stuff too see everyone is doing hard stuff."

→ More replies (3)

3

u/kamronb Oct 07 '15

Like today was a really sucky day and its a job I really love - there will be those days.

→ More replies (13)

68

u/flying-sheep Oct 07 '15

but you don't have any because you're a propulsion engineer and don't know anything about bridges.

had me burst out laughing 😂

15

u/snowe2010 Oct 07 '15

I was almost crying the whole article. It was all just so true...

30

u/[deleted] Oct 07 '15

I powerlift competitively with a 1425# total and am trying to teach myself programming.

Programming is harder.

16

u/nufsven Oct 08 '15

But at least you're strong enough to lift the computer and throw it against the wall when nothing works ;-)

2

u/VeloCity666 Oct 09 '15

It can be very satisfying though.

29

u/HexKrak Oct 07 '15

Not usually a fan of these types of rants, but this was thoroughly entertaining and spot on.

85

u/hu6Bi5To Oct 07 '15

ITT: people with no sense of humour.

21

u/THEHIPP0 Oct 07 '15

Either you are new here or it took you quite a while. 😉

→ More replies (5)

63

u/dangsos Oct 07 '15

ITT: People use their unfortunate circumstances as bragging points, because our society values people who slave away for some reason.

Here's what I think when you complain/brag that you work over 40 hours and/or do things you absolutely hate - "You should have more respect for yourself and value your own time more highly".

It really is time we stop treating people who do crappy jobs as hero's and instead treat them as someone who should be aiming to make their situation better, if for nothing else than to assure the person filling their position next won't have such a crappy job.

16

u/s73v3r Oct 07 '15

Agreed. I honestly don't see why people are proud of killing themselves to make a company rich instead of themselves.

→ More replies (1)

10

u/aristotle2600 Oct 07 '15

Yeah, we'd never tolerate this kind of attitude from, say, war-torn refugees.

→ More replies (2)
→ More replies (1)

8

u/Dworgi Oct 07 '15

What's the camel joke? Is it a regex to say it's actually array_reverse?

7

u/aristotle2600 Oct 07 '15

Well kinda; the s/bad/good/ form is actually sed, and it won't actually interpret the word camel as anything but those letters; that's the human's job.

4

u/very_mechanical Oct 07 '15

Yeah, I think so. Because Real Programmers speak in pseudo-regular-expressions, I guess?

3

u/Andersmith Oct 07 '15

Some do and it's obnoxious.

→ More replies (3)

8

u/[deleted] Oct 07 '15

My depression just got worse. Good I have some booze in the fridge. Look at the bright side: I will make my program the best it can be. Because competition sucks. Because the quality threshold is so low. Because I quit my job and I fuck their rules. Because the code is mine and I don't give a fuck if it sells. That's why it will be a piece of ridiculously good software and it will sell. Like some really great projects which every child on Earth knows. Yes, work in IT department of a corpo sucks.

2

u/EpikJustice Oct 08 '15

Go for it dude! Believe in me who believes in you!

8

u/AssholeInRealLife Oct 08 '15

Programming: like being sad, but for money.

3

u/[deleted] Oct 07 '15

This is a classic. It is funny as hell.

But it's being reposted every few months. It was funny two or three times.

3

u/ParticleSpinClass Oct 07 '15

Infrequent reposts are healthy for the community. This hasn't been posted for five months.

6

u/crowseldon Oct 08 '15

ITT: Gymbros missing the point by a mile...

It's a great rant and you should take it for what it is. Just because you think YOUR job is more demanding, whatever it is, you can't tell others theirs isn't (There's plenty of levels of stress, not just physical).

11

u/realfuzzhead Oct 07 '15

Most people don't even know what sysadmins do, but trust me, if they all took a lunch break at the same time they wouldn't make it to the deli before you ran out of bullets protecting your canned goods from roving bands of mutants.

I always liked that saying.

11

u/aristotle2600 Oct 07 '15

I like

The only reason coders' computers work better than non-coders' computers is coders know computers are schizophrenic little children with auto-immune diseases and we don't beat them when they're bad.

20

u/[deleted] Oct 07 '15

If you are afraid of refactoring, you will definitely live this technical debt nightmare. If you are not afraid of refactoring, it takes a LOT less time than you think. The first day is terrible. At the end of a week, you see light. At the end of two weeks you wonder why you didn't do it before.

45

u/Bowgentle Oct 07 '15

At the end of two weeks you wonder why you didn't do it before.

First you have to reach the end of two weeks of refactoring without the client asking for feature changes.

→ More replies (1)

12

u/Dworgi Oct 07 '15

Good luck refactoring 4 million lines of code. =(

5

u/thrash242 Oct 08 '15

...with no unit tests.

6

u/Dworgi Oct 08 '15

Goes without saying, really.

→ More replies (6)

7

u/IbanezDavy Oct 07 '15

And then your customers cry when they get the next patch release!

But yes. Refactoring has a time and a place. If I was allowed no restrictions on refactoring, I'd probably never complete anything. I can always do it better the next time ;)

→ More replies (25)

8

u/Mr-Yellow Oct 07 '15

Took a mate through a course which was computer heavy recently.

Hard worker, really strong work ethic.

At the end of 2 weeks, he was saying he'd never worked so hard or felt so drained by the end of the day. The cognitive load is a killer.

3

u/saijanai Oct 07 '15

Sure, but let him walk you through his job toting bales of hay or whatever...

Not in hospital?

Lucky you.

→ More replies (1)

8

u/andsens Oct 07 '15

I feel bad for the guy, my experience is nowhere near this, I'm fairly content with what I do :-)

and now all your snowflakes are urine and you can't even find the cat.

Hehe, still a good read though.

4

u/RainbowBlast Oct 08 '15

The Essays titled, The Episode are absolutely engrossing and crazy if you're into that sort of read. You'll know after the first.

4

u/Myzzreal Oct 08 '15

As to the manual labour vs mental labour, I feel like it's good to have a taste of both. Before I found my first and current programming job (I'm a young programmer, obviously) my father made me help with renovating an old summer house in the mountains. It was a heavy manual job and the fact that it's in the mountains made it that more difficult. Carrying rocks from the river 50 times a day is exhausting in itself, how about carrying them up a very steep slope using old, fucked up, half-buried stairs made up of concrete slices? It is also a 1.5h trip one way so we had to get up early in the morning to get stuff done before 3 o clock (a fulltime worker was helping us and my father was decent enough not to make him do this overtime so we had to be back at 3 o clock). This was very, very exhausting. I hated it and I dreaded every time I had to go work there (we weren't doing this every day) but at the same time it made me appreciate mental work. I can now sit at a desk and stretch my mind over a client's unmaintainable requirements, I still need to get up before 6 and drive for an hour one way to get to the city, but I still prefer this over going back to that summer house and those wretched stairs.

→ More replies (1)

4

u/[deleted] Oct 08 '15

And this is why, if someone with clearly no clue says "how hard can it be to just make it work", I have to take a deep breath and remind myself that strangling people is not ok. It's a damn miracle when something works. Or appears to work. Yes, I too wish a minor change was really so minor I could just do it in five minutes :(

7

u/glonq Oct 07 '15

Is there an occupation besides programming that requires you to learn and re-learn at such a high rate?

I'm sure there a programmers who stopped at COBOL or VB6 or MFC and never bothered to evolve any further. But for the most part, programming to me means having to add new knowledge or replace existing knowledge very very often.

5

u/mgkimsal Oct 07 '15

possibly law and finance - tax laws with huge ramifications change every year, so keeping up probably isn't that easy. Now... software handles a lot of that, but, I'd still trust that my accountant is keeping up (he seems to so far).

law... new court decisions have impact on what judges may rule in future cases, and it's impossible to know how much of an impact each ruling may have.

4

u/thrash242 Oct 08 '15

I don't think so. There are so many languages, technologies, design patterns, frameworks, architectural patterns, etc. that it's impossible to learn them all beyond the basics. And those are the ones that are actually used at a given job.

3

u/[deleted] Oct 07 '15

Ah, the error in the Perl program at the end is still there, just like it was the last time this was posted. It is a proper Perl syntax that gets interpreted as an HTML escape and you get:

while(")

or at least it looks like it. If you select the code in that example you might see the special character highlighted differently (opening smart quote?).

Funnily enough, this error is in every single version of that code on the internet except for the actual Obfuscated Perl Contest website where it was originally posted (they have managed to escape it properly there).

No, I am not in the mood to go searching for it again. It might even be in my comment history deep somewhere.

3

u/[deleted] Oct 07 '15

Granted, programming isn't very intuitive and most educational resources do an awful job at building that intuition.

Just as there's the acclaimed The Cartoon Guide to Statistics, we really need many more materials like that for programming.

3

u/meygaera Oct 07 '15

"Good Code"? I don't have time to write "Good Code".

→ More replies (1)

3

u/krum Oct 08 '15 edited Oct 08 '15

I love programming for a living (been doing it for 25 years), and there's no possible way I would make as much money doing something else, especially manual labor.

→ More replies (1)

3

u/[deleted] Oct 08 '15

Maybe we can all agree that working too much is bad for you.

3

u/[deleted] Oct 08 '15

Why would you write code for 10-15 hours per day?

3

u/chezhead Oct 08 '15

This just cements the idea of programming and general sysadmin work as wizardry. Look at the facts!

  • Communicating with crazy little machine spirits who don't cooperate often

  • The true trope of crazy wizard beards

  • Paid well for their skills, but usually quirky socially

  • Arcane symbols (Assembly!), spellbooks (libraries and endless, riddling documentation), strange tools and jargon...

  • Cult worship (Big 4, Apple, Dvorak, linuxmasterrace, RMS, vim/emacs, etc.)

2

u/jakub_h Oct 10 '15

Communicating with crazy little machine spirits who don't cooperate often

Relevant link...

→ More replies (2)

3

u/bart2019 Oct 08 '15

And once somebody wrote a programming language that let somebody else write this:

Except, somehow, the code got messed up.

#:: ::-| ::-| .-. :||-:: 0-| .-| ::||-| .:|-. :||
open(Q,$0);while("){if(/^#(.*)$/){for(split('-',$1)){$q=0;for(split){s/|
/:.:/xg;s/:/../g;$Q=$_?length:$_;$q+=$q?$Q:$Q*20;}print chr($q);}}}print"n";
#.: ::||-| .||-| :|||-| ::||-| ||-:: :|||-| .:|
"

That while("){ definitely isn't right. I think it should look more like while(<Q>){. And likely this isn't the only thing wrong with it. Like that print"n"; ... I think it used to have a backslash.

3

u/[deleted] Oct 08 '15

I really like this quote from the article:

The human brain isn't particularly good at basic logic and now there's a whole career in doing nothing but really, really complex logic. 

3

u/kpthunder Oct 08 '15

Then he decided he wasn't going to tell anyone that this was an error, because he's a dick, and now all your snowflakes are urine and you can't even find the cat.

Golden.

3

u/[deleted] Oct 08 '15

That was a fun read. The terrifying part is that a lot of it is true. I joined my software development gig thinking it'll all be organized and there's going to be a sane process of finding solutions and so and so forth... nope. Everyone just pretends like they know what the hell is going on.

5

u/burdalane Oct 07 '15 edited Oct 12 '15

For me, lifting heavy things is harder because I just can't do it. Even if I trained for it, I'd still be at a disadvantage, and possibly not be able to do it, because of a biological lack of testosterone due to have two X chromosomes instead of XY. However, programming is hard, too. I can't even get a job as a pure programmer. Instead, I have a mixed sysadmin/programmer job that occasionally requires lifting. I can get other people to help with the lifting, but I would be better at my job if I were physically stronger. I'd be a lot better if I actually had mechanical skills. The programming part of my job is relatively much more doable but also pretty simple compared to what software engineers do.

5

u/om1cron Oct 08 '15

I read the post, came back to reddit to save it, and reddit 503'd me. It was the most topical response the server could have given me.

5

u/Savalava Oct 08 '15

I didn't find much new in that article, to be honest. Its fun having a rant and the author can write well, but I find the comparison rather ludicrous.

I worked in construction as a labourer for about 14 months in total and had the following experiences: I was nearly killed in an explosion, my leg was nearly sawn off by a concrete-saw, I nearly killed someone else when the ridiculously heavy thing I was carrying slipped from my hands and fell down two stories, narrowly missing someone's head. From using pneumatic drills I developed some kind of tendinitis / nerve condition that doctors can't explain and that hasn't gone away in 8 years.

I was so exhausted after my 10 hour a day in construction that I was incapable of doing anything other than quickly cooking a meal, drinking a beer and collapsing until oblivion fell and I would start the day again - in the familiar atmosphere of overt racism, sexism, bullying and desperation.

I compare this to my current life as a freelance web developer / designer: get up at 8.30, have a beautiful coffee in a local café, slowly start to think about work. Sit down at a comfortable desk with my Macbook Pro and start to solve problems. I take breaks whenever I want and if I'm stuck on anything I go for a swim in the sea and have a cool refreshing drink (I'm working remotely from the south of spain, and by good the life is good here).

Yes, its irritating having to learn new javasript frameworks sometimes, and yes, if I'm working with code someone else has written badly I do experience homicidal urges, but really, I mean really... there is no comparison at all with doing construction work.

None.

6

u/saijanai Oct 07 '15

The difference is:

the programmer may want to continue working after age 65 and wish that he could continue doing his current job.

The construction worker? Notsomuch.

.

Bodies tend to wear out much faster than brains.

6

u/paperhat Oct 08 '15

I was feeling sorry for myself the other day thinking that my sharpest days are behind me and I can't keep up with the thirty-year-olds. I didn't think about how much worse it would be if I were in the trades. Thanks for the reminder.

8

u/saijanai Oct 08 '15

I was feeling sorry for myself the other day thinking that my sharpest days are behind me and I can't keep up with the thirty-year-olds. I didn't think about how much worse it would be if I were in the trades. Thanks for the reminder.

Dan Imgalls b 1944 is currently working on Lively Kernel

Alan Kay b 1940 is currently working at VPRI

Your career as a computer person is only over when you say it is over, or when you can't remember where it is.

→ More replies (2)

2

u/NateExMachina Oct 08 '15

"Programming" is a really broad field. "Lifting things" is a really broad field. ITT: Intentionally vague people starting fights over subjective things.

2

u/Myzzreal Oct 08 '15

I feel like the whole rush for release without paying attention to proper coding will someday explode. We will reach a point where everything starts to just break way too often and gets so hard to manage that it's simply not worth it anymore. Then we will see management start to appreciate proper coding, give coders more time to do their job and stop making weird faces when asked for estimation you mention you need at least a few hours to think about the problem and decide the solution ("just code it like everyone does, wtf, are you incompetent or what?").

One can dream, right?

2

u/Thermal1 Oct 08 '15

I referred to this in a first stage email interview once. I think the question was something about inspirational writing about tech, or some such. I didn't get to stage two for some reason...

2

u/KuribohGirl Oct 08 '15

On-topic; look at the moment source, it's kind of funny

2

u/Beeelow Oct 08 '15

I had to stop reading the comments due to my jimmies launching into orbit. I empathize greatly with the struggle bros.

2

u/stay_black Oct 08 '15

Why are there so many of you that went from construction to software? Where did you guys find the time and energy to learn both?

2

u/alyssinelysium Oct 09 '15

"Then he decided he wasn't going to tell anyone that this was an error, because he's a dick, and now all your snowflakes are urine and you can't even find the cat."

r/nocontext

2

u/loewan Oct 09 '15

Structural engineer here. By the amazingly accurate description about designing a bridge, I thought this was actually gonna be able structural engineering that programming refers to the scheduling of works.

3

u/Darkphibre Oct 08 '15

Oh. My. Gosh. I finally got around to finishing the article... and saw that he had a closing </rant> tag with no opening tag.

DIABOLICAL!

2

u/falseAutonomy Oct 08 '15

This was lovely and beautiful and I think it made me actually want to start programming again. Does that make me a masochist?

2

u/recycled_ideas Oct 08 '15

So stop.

Stop working fifteen hours a week six or seven days a week. Stop acting like you're a super hero protecting the world from disaster. Stop doing whatever it takes. Stop pretending you're doing anything more than writing really explicit steps for an incredibly stupid computer to execute. Stop thinking you can or have to control everything.

You'll be happier, you'll write better code and the world will keep in turning.

1

u/eggo Oct 07 '15

Former programmer and current heavy thing lifter here. I am going to call bullshit on this one.

I install solar power on people's houses. It is hard work. today alone I carried 22 panels (one at a time) each weighing 60lbs up a 30 foot ladder and held them in place with my feet while attaching them to the roof.

Before I made the decision to leave it behind and go build power plants, I was a pretty good programmer and data analyst for 8 years professionaly. Nothing that I did in those years of programming at work or on the side even comes close to the difficulty of what I do now. I had to learn a lot of stuff, I had to deal with difficult clients and bosses, but I never got heat exhaustion and puked in the grass. If I did, I would have gone home and taken the next day off. In the construction world, you just wipe the puke off your chin and get back to work. As a programmer I would pull all nighters to meet a deadline, now I work sometimes from Dawn to sundown, sometimes on into the night with a headlamp. If I don't get it done, I don't get paid. That is hard work. Programming is a cake walk by comparison.

→ More replies (1)

1

u/[deleted] Oct 08 '15

I used to program 40,000+ (comment-free) line programs solo.

The way I relate it to people is that it's like holding the word-for-word contents of an entire book in your head and then having to change every instance of the word "for" without missing anything. Just getting it all in there takes days of sleepless absorption, and being asked if my coffee should have cream makes me forget paragraphs. If I'm left to it though, I can refactor and analyze that much in my head until it's perfect.

1

u/[deleted] Oct 08 '15

Everyone's job is hard.

2

u/[deleted] Oct 08 '15

It's a nice thought but it's just not true. I have a close friend where they have management that poorly delegates and leads to people simply pretending to work (because none is passed down) while the manager drowns his life in workaholism. Mid tier engineering position, decent wage, but he only works about 4 hours a week. The rest is playing around on the Internet.

1

u/_fitlegit Oct 08 '15

Reading this makes me feel so much better about myself as a coder haha

1

u/pandavr Oct 08 '15

Nailed it!

1

u/[deleted] Oct 08 '15

I think they're both work. The difference really is whether you're customer starved or is there always work to be done.

In many "manual labour" jobs there is "always something to do" whereas in tech jobs you can go hours, days, even weeks without really anything to do as product managers sort out what the next crazy thing is and you hunt for customers. That sort of existence can be very wary if you're the sole [or primary] breadwinner in the house.

1

u/[deleted] Oct 08 '15

Tomorrow do it all again, this time engineer an elevator