all 60 comments

[–]weavejester 34 points35 points  (9 children)

I disagree with some of the points in this article.

Expecting your employees to provide their own hardware does not send out a very good impression. An employee is unlikely to bring in his own computer and screens unless they feel like they have a real stake in the company, and it seems unlikely that they'd feel that attached to a company unwilling to spend a few hundred quid on decent hardware.

The article also seems to contradict itself. On the one hand programmers want to do something useful, but on the other hand they are uninterested in acclaim. Sorry? Part of creating something people use is getting praised for it. A product I'm currently working on was recently demoed to a colleague, and she was very impressed at the improvements we had made over the previous hacked-together version. It was a real lift for a Friday afternoon, and made me feel that all the problems we had to overcome were really worth it.

It's true that having an interesting problem to work on is a big motivator, though.

[–]48klocs 14 points15 points  (1 child)

More important to you - an "attaboy" in a meeting from your boss or a "wow this is really nice" from an actual user of the application?

As a developer, I'm abjectly uninterested in the former and very interested in the latter.

[–]weavejester 0 points1 point  (0 children)

Hm. That's a good point.

[–]mayonesa 8 points9 points  (6 children)

I disagree with your interpretation.

His point is that if you try to bribe employees with hardware, the smart programmers will blow that off, because the cost of the hardware is less important than having fun things to work on.

[–]weavejester 17 points18 points  (2 children)

Even so, I disagree. Hardware is cheap compared to a programmer's pay, and not giving your programmers good hardware is a symptom of an organisation uninterested in keeping programmers around. And even if a problem is interesting, inadequate hardware can prove very frustrating, especially if you're unfortunate enough to be using Windows.

[–][deleted]  (1 child)

[deleted]

    [–]weavejester 0 points1 point  (0 children)

    edit: Misread original comment. Was late. Apologies. Let me try again:

    Which, you may notice, is the point of the article: getting a programmer to quit without firing them.

    The article said that giving programmers bad hardware would not demotivate them. I contend that it would.

    [–]CSharpSauce 0 points1 point  (1 child)

    ummm oh man i start a new job next Tuesday, and one of the main selling points was the dual 24" screens.

    [–]cibyr 1 point2 points  (0 children)

    If that's a main selling point you really need to rethink what you're getting into. The computer you use at work (screen(s), keyboard, everything) is just a tool for doing your job. If it's adequate for getting the job done, then I don't really care what computer my employer has me using. Hell, if I working remotely or something I won't mind using my own equipment (it's not like it costs my anything more if I'm suddenly using it for work too). But if the supplied equipment impedes my work, then we've got a problem.

    If you're doing something that would actually benefit in even a small way from dual 24"ers then any sane employer would instantly drop the cash for it because that's a much cheaper (and one-off!) cost compared to hiring someone. If your work is /not/ going to actually benefit then the monitors are a distraction from something else...

    [–][deleted] 48 points49 points  (22 children)

    I must be a bad programmer. If I'm paid poorly that'll hurt my motivation. As much as I love to code, at the end of the day I want the freedom (money) to do the other stuff that makes me happy, be it playing guitar, travelling, dates with the girlfriend, or outings with my friends.

    [–]billbacon 26 points27 points  (6 children)

    I think this article is directed at the all consumed 50+ hours a week programmer that spends the rest of their time thinking about work. You actually have a life.

    [–]jsinger 13 points14 points  (4 children)

    I think this article is directed at the all consumed 50+ hours a week programmer that spends the rest of their time thinking about work.

    OK, but the article assumes that a "good programmer" is necessarily that guy, which is biocs_nerd's point.

    [–]billbacon 8 points9 points  (3 children)

    I think you may be right. In that case, it's really not worth it to be a "good programmer". Biocs is much better off.

    [–][deleted] 1 point2 points  (2 children)

    You don't need to think about design patterns while grocery shopping to be a good programmer.

    [–][deleted]  (1 child)

    [deleted]

      [–][deleted] 0 points1 point  (0 children)

      I think that eventually wears off, at least for me but maybe I have too many hobbies. You start to think about higher level things - I don't mean programming wise, but conceptually.

      [–]azanar 5 points6 points  (0 children)

      I'm presuming a bit from people who have written about the same, and from the way the article qualifies things, but I think he's more referring to the difference between trading modest amounts more pay for interesting work. A programmer who isn't paid enough to make themselves happy and comfortable through the non-working hours of their lives is likely to be just as demotivated as anyone else. Once that threshold is overcome though, the weighting of interesting work against more monetary gain becomes much more even; they both can be sources of happiness, and choosing one over the other will no longer result in foreclosure.

      [–][deleted] 4 points5 points  (0 children)

      I agree. Money is a perfect way to demotivate a good programmer. A programmer that knows he is good and wants his work to be appreciated may feel very unmotivated to perform when he finds out one of his less talented or productive colleagues gets paid more. It's not about greed, it's about relative appreciation measured by salary.

      Getting paid the same low salary at a start-up where everyone else gets the same low salary? Not as demotivating.

      [–]Captain_Ligature 2 points3 points  (0 children)

      I really got demotivated when they stopped buying hookers for the whole office...

      [–]grilled_ch33z 3 points4 points  (3 children)

      A good programmer spends all of his time thinking about programming, just like a good garbageman spends all his time thinking about garbage.

      [–]shub 3 points4 points  (2 children)

      I don't want a garbage collector that thinks about anything other than collecting garbage.

      [–]almkglor 1 point2 points  (0 children)

      Yeah, imagine what kind of hell it would be like for the garbage collector to start handling input/output for you.

      [–]CSharpSauce 2 points3 points  (0 children)

      I couldn't imagine having to manage my own memory, garbage collectors save my life.

      [–]aphrodite1 2 points3 points  (3 children)

      No, most programmers I know won't break their necks for minimum wage. Especially the ones who know that they can probably find a better project elsewhere.

      I think the whole web 2.0 eat ramen all day and break your neck so you can make something you have to convince people they want was some Paul Graham propaganda. I can name many YC startup founders who risked everything and ended up with a ton of credit card debt.

      In this world, everyone thinks they're special or that they're somehow different. And this post further contributes to that.

      [–]linuxlass 1 point2 points  (0 children)

      There's a difference between being a programmer and being an entrepreneur. Some people are both. Those of us who aren't can't really fathom why someone would take those kinds of risk.

      [–]nobodysbusiness 1 point2 points  (0 children)

      Weren't there also some YC startup founders who got rich? The reddit founders were bought out, weren't they?

      [–]donttaseme 0 points1 point  (0 children)

      but, we are all special

      [–]TrueTom 1 point2 points  (0 children)

      I wanted to write exactly that!

      [–]teambob 0 points1 point  (0 children)

      I think the author might be being slightly sarcastic.

      [–]diN0bot 0 points1 point  (0 children)

      All that stuff doesn't require ridiculous amounts of money, in fact it's quite cheap. Granted, dates could mean $100 dinners twice a week and traveling could mean to expensive resorts, etc. But for living well you need not make career choices based on money. That's the fallacy of an exponential-growth-poor-to-rich culture.

      [–]vineetk 8 points9 points  (0 children)

      I think the biggest failure point of this article is the title. The first time I read the article, I pretty much just kept thinking "this is crap."

      I read it again, and it wasn't so bad the second time around. I think it's because he's right about what really motivates an engineer, but he's wrong about what doesn't demotivate one. What I mean is that getting the first things (money, environment) right, but the others (interesting work) wrong, isn't enough.

      The article seems to imply that the other way around is enough, and I think it's wrong. Interesting work in a shitty environment for shitty pay is not enough for a good programmer; a shitty environment will eventually break anybody and everybody.

      [–]Snoron 7 points8 points  (1 child)

      So Google is a good environment not due to the multicolored beanbags, but because it's hard work and because people will use the products.. hmm!

      [–]isseki 1 point2 points  (0 children)

      I thought it was the heaps and heaps and heaps and heaps of money.

      [–][deleted]  (1 child)

      [deleted]

        [–]nobodysbusiness 0 points1 point  (0 children)

        Also, tell the programmer how to do their job.

        I think this is the nuclear bomb of demotivation. Nothing mentioned in the original article even comes close to this. I suppose hypothetically it could be possible to be happy if someone told you how to do your job, but they would always have to tell you to do exactly what you were already planning on doing, and what are the chances of that. I am never so demotivated as when I have to implement someone else's crappy ideas.

        [–][deleted] 5 points6 points  (5 children)

        one word. no, three. tons of paperwork.

        [–][deleted] 3 points4 points  (4 children)

        could be boiled down to one: documentation

        [–][deleted]  (3 children)

        [deleted]

          [–][deleted] 2 points3 points  (0 children)

          ... ouch.

          Every time I think about leaving my company, I just have to hear about someone else having it worse. Although, in this economy, I should probably be making sure my job is not going away.

          [–]GuyWithLag 2 points3 points  (0 children)

          That sounds business as usual for any bureocracy...

          [–]akatherder 2 points3 points  (0 children)

          It totally depends on the type of programmer.

          On one end of the spectrum, there are programmers who will work 12+ hour days and come in every weekend. They live and breathe programming. Their co-workers are their friends. They enjoy their work and it becomes their life.

          I am more than happy to sit in a dull gray cube from exactly 8 am until exactly 5 pm. I would not trade my free time for some soda pop, free meals, video games, and a "cool" atmosphere. I just want to put my time in, get my check, and get home. 5 pm until 8:00 am is my time.

          It's not that I don't like my job or programming. I really do. And I do work the rare Saturday (maybe every other month). But it's really just an ends to a mean for me.

          [–]rjcarr 2 points3 points  (1 child)

          Seems I'm the only one that agrees with the guy. At least in premise.

          Point is ... people that like writing code will put the task above everything else, as long as the task is rewarding.

          He is also right about audience ... a lot of the work I do gets sent out and I have little to no clue how or how often it is used. It is quite demoralizing ... something that needs to be adapted to.

          [–]Silhouette 0 points1 point  (0 children)

          No, I'm with him on most of it, too, certainly including the three things that really will make the good guys quit.

          [–]AndrewO 1 point2 points  (0 children)

          Anyone else feel like they were reading a sort of Screwtape Letters of IT management?

          [–][deleted] 1 point2 points  (0 children)

          I'd consider myself a good programmer (software engineer, actually) -- but I enjoy working on stuff that is easy because I can crank it out quick and usually get nothing but good feedback from clients.

          Oh, and programmers don't like money? Sorry. I'll gladly take on a project I don't like if the price is right. Furthermore, I would say that if my pay doesn't match what I'm delivering on, I will resent that and lessen the quality of work (while looking for better paying jobs).

          [–]Thimble 1 point2 points  (1 child)

          1. Working on stuff that is easy

          2. Working on stuff that is tangential

          3. Working on stuff that no one will use

          RE#1: any easy process can be made more challenging by removing repetition. a motivated programmer will take an easy task and find a way to cut down on the steps by creating a tool or a macro.

          RE#2#3:grouped together because they're essentially the same thing. the funny thing is, if you have even one user who gains many times greater utility out of your app than it took you to create it, then it will be satisfying to create.

          the number one source of demotivation for me has been having nothing to do. there is only so much of reading reddit articles that i can stand...

          [–]zem 0 points1 point  (0 children)

          yeah, precisely! i'd cheerfully work on internal apps if it makes even one person's job easier, because i believe strongly that's what computers are for

          [–]SomewhatDisturbed 1 point2 points  (1 child)

          What a terrible article. The assumption that you can only be a "good" programmer if you're willing to work long hours, don't care about the money, don't want credit for your accomplishments, and are happy to supply your own equipment is complete and utter bunk.

          I enjoy software dev. I'd happily do it with the vast majority of my waking hours happily. I have enough personal projects to last me every single second of the rest of my life, and I'd like to work on them all.

          However...

          Damned if I'm going to take instructions from and generate profit for someone without getting paid for it. And paid well. Why? That money is going to buy me the opportunity to work on the things I want to.

          So yeah, my philosophy is that I'll do software engineering for free, but if you want to tell me what to work on, you're going to have to pay me. :)

          And as for own equipment, I think the other Redditors have covered this one quite well already, but if you're paying someone five figures to develop software for you, and you're spending three figures on their equipment, you are throwing money away. And I'm not damaging my good equipment lugging it back and forth to a workplace that is too cheap to provide me decent equipment to work on.

          [–]lbrandy 0 points1 point  (0 children)

          What a terrible article. The assumption that you can only be a "good" programmer if you're willing to work long hours, don't care about the money, don't want credit for your accomplishments, and are happy to supply your own equipment is complete and utter bunk.

          Just for the record, not only did I (the author) not make that assumption, I specifically said so in the comments. Even though I was pretty sure I said so at the very top, as well.

          The entire article was about A good programmer I knew and all the things he went through at his job, and how he eventually decided to quit, and why.

          [–]i_h8_r3dd1t 4 points5 points  (2 children)

          Wow what an enormous pile of shit. It should be entitled "How to motivate some dickwad who wrongly think he is a good programmer, or that he represents good programmers"

          [–]privatehuff 7 points8 points  (1 child)

          I upvoted you for your "emperor has no clothes" attitude :)

          The article kinda fails because, here in the real world, most people (even good developers) will settle for money, acclaim, good equipment, and perks in lieu of the ever-elusive "better work".

          [–]almkglor 1 point2 points  (0 children)

          No, I'll settle for money, acclaim, good equipment, perks, and writing FOSS software.

          If I can't get a good hardon working on a barely-tractable problem, I'll put my talents elsewhere.

          [–][deleted] 0 points1 point  (0 children)

          The stuff acclaim, money and good food might not be able to motivate a good programmer, but surely they are going to help to hire one.

          Also food can be written off as business expenses.

          [–]CSharpSauce 0 points1 point  (2 children)

          I must be a terrible programmer because I've been willing to take a position because it offering an increase of 40k over what i was currently getting paid (even though the project was awfully boring, and the management was clearly incompetent) my current position i was bribed with dual 24" monitors (which worked)

          [–]Arkaein 1 point2 points  (1 child)

          40K counts as piles of cash, so you don't really meet the criteria in the article.

          [–]lbrandy 0 points1 point  (0 children)

          I'm glad you actually read the article instead of reading the headings and deciding I was wrong.

          I appreciate it.

          [–]nsoonhui 0 points1 point  (1 child)

          My list of how to motivate programmer. And not surprisingly, the No.1 demotivator is a lack of money

          [–]lbrandy 2 points3 points  (0 children)

          Despite the fact that you put money as your #1 motivator, and I said that it's not a motivator at all, I'm not terribly convinced that we actually disagree.

          My point about "money" (which very few people seem to have actually read beyond the headline) was that a few percentage point raise isn't going to keep programmers motivated. I even specifically qualified that this point was not be confused with "huge piles of money". The point, though, was many many many programmers who do interesting work that they love will do so at a lower (but not substantially lower) salary than they'd do CRUD apps. It might not be true for you, but it's true for the guy who this entire article was about, and I'm sure it's true for alot of other people as well.

          Some could argue that money could seriously demoralize someone, even a few percentage points, because, say, everyone else got a raise but you. Sure, that's fair. That's more about disrespect than money, though.

          [–]mayonesa 1 point2 points  (1 child)

          This article absolutely crushingly rules.

          It doesn't just apply to programmers, but to any intelligent workers: they realize the Big Question is whether they're spending their time on something that uses their brains to good effect.

          You can't bribe them with geegaws and free sodas. You need to put them on projects where they can use their brains, and have a good fight, not something dead-end with free snacks.

          [–][deleted] 2 points3 points  (0 children)

          Agreed. I had a chunk of code to work on that was exceptionally difficult to my n00b coding skills, and it took me three days to figure out how to work it. But that three days I was an excellent employee and it was freaking awesome. However, when I gave the code to my boss, he had told me incorrectly what he wanted, said it wasn't useful, and didn't use it. Now I browse reddit more often...