What de-motivates programmers?

feature photo

If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!

computer user

I wrote ‘What motivates programmers‘ several months ago and at the time it caused quite a stir. The basic idea was that programmers are not motivated by the same things as everyone else, they are a complex bunch and in general are more likely to be motivated by a nice big 24 Inch Screen than a small bonus.

This time round I wanted to concentrate on what de-motivates programmers the most. Scott Adams has made a lot of money by drawing cartoons about one pointy haired manager who pretty much sums up what we all think of managers and the things they do that de-motivate us.

All of us over time get used to ignorant/incompetent/stupid managers and because the level of interaction with them in the most part can be limited we learn to cope. The people I think can make your job good or bad in the long run are actually your coworkers and more importantly your fellow programmers.

Abusing Revision Control

You are thinking aye? Revision control is absolutely vital to the running of any development (and yes even for 1 person) and therefore it can be make or break if one or more team members does things wrong. What do I mean by wrong? Not entering descriptions when checking in, randomly moving stuff around, deleting files that are needed and worst of all (for me anyway) is when a merge has to be done by hand not thoroughly checking the consequences or in fact losing someone else’s code during the process. (Arrrggghh)

Reformatting My Code

This one is easy to solve by having some form of coding standards, but without it (or with those that ignore standards) you can end up having your nicely formatted code altered, and getting it back and finding it in a mess can make you go ‘crazy’. The pet peeves are tabbing, placement of brackets and BAD, BAD, BAD.. (getting the point) naming conventions (or the complete lack of.)

Communication

Programmers even at their best are not always the most communicative but when it comes down to it we all have email/chat/morse code in which to tell each other what is happening. When we don’t tell our fellow programmers what is happening things go a) Wrong b) Wrong c) Disastrously Wrong (made my point?). On larger projects communication is vital and things can be put in place (like a wiki) so that everyone knows where to put any knowledge that needs to be disseminated.

Bad Programmer

I suppose the thing we hate most (from the point of view of those who think they are better) is other programmers who write bad code which we end up rewriting. And in a lot of cases it is very hard to do anything about this (I steer clear of this one by not taking on bad coders) because going to management with your complaint will have you seen as a ‘not a team player’.

So what annoys you about your fellow programmers?

There Are 27 Responses So Far. »

  1. [...] Nick Halstead explains to us What De-Motivates Programmers. [...]

  2. -Programmers who over-engineer problems so they take many times longer to complete, test and fix.
    -Programmers who avoid problems.
    -When management makes technical decisions without input from engineers/programmers.
    -Lack of input from managers of what is a priority.

    That’s a few!

  3. When marketing drives development :)

  4. Good points from Ryan.

    I for one, have a co-programmer, who believes he is damned good, but he is just about average. That alone wouldn’t be too bad, but he looses temper very quickly, which resulted over the years that noone really wants to communicate with him. It is impossible to discuss problems with him, as he attacks you on the first sign of accuse he could have made a mistake. (He even had a legal issue because he has beaten someone up who said something wrong(ish) about his girlfriend). He is the one getting on my nerves at most.

    Most of the others in our team are some of those stereotypical coder lone wolves, some not even speaking English properly, creating their own bubbles of space and time. Our “team” is like isolated islands trying to form a continent.

  5. what de-motivates programmers…

    Nick Halstead wrote a very good post on what de-motivates programmers. I agree entirely with his post and I would like to add another item to the list:
    Bad Time Management / Meetings
    ……

  6. Reformatting My Code: Hell I have to reformat other’s code because it’s so messy.
    Tabs instead of spaces drive me crazy. Mix match of Tabs and Spaces. I like to have my brackets line up to I know what’s what. I see the “$this_is_the_blah_blah_variable_for_xyz” all the time (also with functions).. Or in SQL have a naming convention that doesn’t stay the course - ‘Counter_1′, ‘theotherCounter’….

  7. I think that the most de-motivating thing is a user that don’t know what he wants… or believes that he knows what he wants, just to change opinion every two weeks ;o(

  8. -Defensive developers: can’t take any input on their work, and immediately take offense to any suggestions given in code reviews etc. Eventually it drives you to just ignore what they do and adopt an attitude of “if it works thats fine”.

  9. -Being treated as a second class employee. All the programmers are crammed into rooms with 7-16 people, all the rest (including support) are 3 persons max per room. I can’t concentrate with 15 people around me.

  10. Agreed on “Programmers who over-engineer problems so they take many times longer to complete, test and fix.”

    Another demotivator is having members of your team who are impossible to work with. They think their way is always the right way, but can’t seem to give any justification or explanation, and refuse to earnestly consider others’ ideas. These types of programmers block progress and demotivate the entire team.

  11. That’s two questions and one assumes an answer for the other. What demotivates programmers is unskillful management. Sometimes dead wood, problematic, annoying coworkers on the team demotivates programmers, but that is just a 2ndary effect of unskillful management. There is a connection though, the project manager is usually a developer who got promoted. And the most technically competent developers which do get promoted aren’t likely to have the people skills. My favorite IT management anti-patterns is Absolutely-No-Management-At-All (opposite of micromanagment) and Developers-Are-Computers-Too-So-I-ll-Give-Direction-Like-I’m-Writing-Code-In-English

  12. I second Jay Pipes’ demotivator! I work for an e-commerce firm and I can’t tell you the number of times I’ve seen some stupid “idea” marketing (”must-have” of course) run the website into the ground! I don’t know if I’m just “lucky” but it sure seems like there’s never any follow-up on that end either to see whether the “idea” even had any ROI!

  13. Bad planning demotivates me, or worse yet no planning at all.

  14. So what makes a bad programmer…. I dont working in a development team, and i am in no way a great programmer… good at best… but what do you run into with bad programmers that you hate the worst… I kinda want to go over and correct my ways if I am doing something as considered bad in the programming world?

  15. A ‘bad’ programmer might be a good programmer that needs training. Regular code reviews and side-by-side development can bring up the skill level across the team as well as create shared conventions. This only works if the people expect to continually teach and learn in their job. If there is no willingness to share or to learn, the same problems will always crop up. That situation de-motivates me.

  16. New, inexperienced people being brought in to work on new and interesting problems, while those of use who have been around for a while of necessity must spend most of our time keeping the old systems running. In the process, not being able to use new technologies, as we watch the newbs learn them on the job…

  17. In my team I’ve become the negative pole bringing the entire team down. I used to comment frequently about the lack of documentation and how it was cultural and mgmt should do something about it. That plus the fact that our business people don’t get any training makes it a very frustrating place to work. Recently I was told I’m a ‘complainer’ by my boss. So I’ve taken my complaints underground and have been fomenting revolt with a few of my team mates who aren’t happy with the team either. Actually, I’ve been talking to anyone who will listen.

    Luckily we have ‘quality of work life’ survey coming up next month. I’m striving to give my managers some poor numbers to express my displeasure since nothing else works. And I’m looking for a different place to work….

  18. a good list as far as it goes

    what is missing from this list, what can really demotivate programmers is:
    a manager that thinks you’d rather have a new monitor than a raise

  19. Bundle of negativety, very funny you should get a job writing for Scott Adams :)

    phloidster, if you read the original post you will find 80% people believe a new monitor is more important.

    Jeff, not everyone can see that they are doing ‘bad’ things so never try to change their ways.

    Jay, marketing driving development… shudder…

    Ryan, Good points!

  20. Programmers who over-engineer problems so they take many times longer to complete, test and fix.

    And the inverse: programmers who put no thought into the problem, developing brittle and ugly code that will stunt reuse and rotts other code, until finally someone else throws their work away and does it right.

  21. [...] The Programming and Management Blog ‽ What de-motivates programmers? [...]

  22. Ummm… I have to disagree about marketing driving development The whole reason there is any development is to produce what marketing has already sold. The problem is marketing not consulting development about whether what they sold is possible.

  23. Doug:

    I tend to disagree. You are confusing market-driven development with development driven by marketing. +1 on the former. -100 on the latter. A good marketing team knows the difference.

    Oh, and BTW, marketing doesn’t sell anything; they provide a brand around which the sales team can sell something.

    Cheers,

    Jay

  24. What de-motivates me?

    Rigid hours. ie. Must arrive 9am; must leave 5:30pm. If you’ve just spent 7 hours coming up with a design to a solution which is expressed in hand-drawn pictures and all in your head: there’s NOTHING more frustrating than not being able to stay till 4am to finish up coding your solution. Managers who make you leave at 5:30pm have no clue how many hours are wasted when you have to come in the next morning and re-think where you were the night before. -then of course you better be in at 9am sharp- not 15 minutes or 30 minutes late even if you’ve stayed till 4am defying their stupidity and finishing the task.

    These managers, completely destroy an motivation I have. Throw all the managers and their idiotic meetings out and the organization may actually be productive.

  25. @Charlene:

    Couldn’t agree with you more! Having worked at 9-5 office cubicle maze jobs, I don’t think I could go back to it. Working for MySQL AB has been great — work from home, travel some, flexible work hours, and five weeks vacation for everyone is fantastic. I encourage anyone to take a look at the jobs.mysql.com site… :)

    Cheers,

    Jay

  26. Adult Paper Dolls…

    Adult Paper Dolls…

  27. young dumb and full of cum 10…

    young dumb and full of cum 10…

Post a Response