Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.
  • Have you ever found a lazy programmer?
  • Have you ever see someone asking you the same question over and over again?
  • Have you taught this programmer step-by-step and he just can't get it?
  • Have you introduced him to Google?
  • Have you shown some good resources, manuals and tips?
  • Nothing worked?
  • Are you doing someone else's job?

If you said yes to all these questions, I may say we are one of a kind! We do have patience, but sometimes it is disappearing.

Please tell me, what do you do with lazy programmers?

Do they have any hope or you would give up? :-)

share|improve this question

put on hold as too broad by gnat, MichaelT, Giorgio, Robert Harvey, GlenH7 yesterday

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

2  
Tough day, huh? –  AShelly Oct 22 '10 at 3:07
2  
Read "How to win friends and influence people" <- there is a lot of good tips :) –  Lasse Espeholt Oct 22 '10 at 7:16
7  
promote them to management! –  Travis Christian Oct 23 '10 at 4:49
1  
Note the noun "you" featured in all of the points. Maybe it's your fault, not the programmer's. I once lost a job interview to another guy who was a bit cheaper (because he didn't have a degree). Two years later, I hear he was fired for STEALING company IP (source code). I guess the few tenths of thousand bucks the company owner saved over two years really paid off when they lost their whole business. Or maybe you try to micromanage too much, or maybe it's just that the overall atmosphere in your company suck. –  Jas Oct 23 '10 at 18:02
1  
Make them use Haskell since it's a lazy language. –  sashang Nov 29 '10 at 8:43
show 1 more comment

9 Answers

up vote 25 down vote accepted

I would be careful not confuse Lazy Programmers with Dumb Programmers... for example, a lazy programmer might write a 200 line utility to generate 1,000 lines of code for him. or to do a repetitive task.

from the book ProgrammingPerl (1st edition):

Laziness: The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so you don't have to answer so many questions about it. Hence, the first great virtue of a programmer. Also hence, this book. See also impatience and hubris.

Impatience: The anger you feel when the computer is being lazy. This makes you write programs that don't just react to your needs, but actually anticipate them. Or at least pretend to. Hence, the second great virtue of a programmer. See also laziness and hubris.

Hubris: Excessive pride, the sort of thing Zeus zaps you for. Also the quality that makes you write (and maintain) programs that other people won't want to say bad things about. Hence, the third great virtue of a programmer. See also laziness and impatience.

share|improve this answer
2  
Different type of lazy if you mean those who right efficient re-usable code so they can reduce the overall effort they spend on a project. This isn't so much lazy as smart and efficient. Lazy people tend to think in the short term –  Brandon Wamboldt Oct 21 '10 at 23:50
    
@Rogue Coder: Well, depending on how you define lazy I could also argument the opposite: someone lazy will want to code right so they don't have to go back and redo the job (so no, they don't think in the short term). That's the definition of lazy like Muad'Dib used. The problem is more lazy + not caring, not lazy in itself. –  n1ckp Oct 22 '10 at 3:28
1  
Doesn't sound like it is this kind of laziness the OP is talking about. –  user1249 Oct 22 '10 at 6:25
    
@Thorbj: OP definition of lazyness seem to be about lazyness of thinking. I don't know much programmer who are lazy thinkers. If you have any on your team I recommend that they are either fired or put in a job where they can't directly hurt the project like QA or management. –  n1ckp Oct 22 '10 at 13:47
    
What the author meant, and anybody else who says good programmers are lazy, is that good programmers are efficient. A significant difference. And that's hard work up front, but less work in the end (that does NOT mean lazy.) –  Duke Jan 10 '13 at 14:20
add comment

I have been in this situation a few times now at my current employer. Most of the time I will try and find out what that person's strengths are and encourage them and management to help move them into that area of strength. If possible.

If the persons attitude is not conducive to this, or they are not a cultural fit i will encourage management to move them on. This may be harsh but it's the best outcome for both the company and the individual.

I am referring here to people that don't learn from their mistakes.

share|improve this answer
add comment

In school, they encourage us to be lazy. If you are too lazy to repeat some codes, you consolidate them somewhere. If you are too lazy to do manual tasks, you write some code to automate it. Being lazy can be a quality to write some useful code.

share|improve this answer
add comment

At one of my first positions, I was told that the measure of my value was how little I bothered the senior programmers. It really got me thinking about the value of other people's time.

New hires should ask a lot of questions, but after a while, they should have the skills to solve most problems independently. If not, then it could be a motivation issue for management to resolve, or else the person might not be suited to programming.

As a colleague, I would suggest making a point about the value of working independently because you have things you want to get done too. You can also show them how to, for example, use google, at progressively slower speeds each time they ask until they avoid asking you altogether.

share|improve this answer
add comment

Yes, I've seen a so called "Lazy Programmer" although some people just can't teach themselves and these get confused with Lazy Programmers. I'd almost argue you can't be a programmer (Or a good one at least) if you can't teach yourself.

Back to your point. I would ensure that the questions they are asking aren't meaningful questions, and are simple to answer or repetitive or otherwise stupid.

Tell them upfront that they need to use Google and that disrupting you is damaging your productivity. Maybe point them towards useful sites for their question topic. Other than that, tell them you cannot help them and apologize "Sorry, I really can't help you, I really need to get this done".

share|improve this answer
add comment

I notice that no one has posted the obligatory Kurt von Hammerstein-Equord quote, so it might as well be me:

I divide my officers into four classes; the clever, the lazy, the industrious, and the stupid. Most often two of these qualities come together. The officers who are clever and industrious are fitted for the highest staff appointments. Those who are stupid and lazy make up around 90% of every army in the world, and they can be used for routine work. The man who is clever and lazy however is for the very highest command; he has the temperament and nerves to deal with all situations. But whoever is stupid and industrious is a menace and must be removed immediately!

It sounds to me that you're talking about a stupid and lazy programmer. In general, they're pains but can be useful if handled appropriately (The industrious and stupid programmer is by far a bigger threat!). In fact, I agree with von Hamerstein-Equord in regards to how you can use this kind of person. Give them the routine, dull tasks that the other programmers don't want to do. They usually enjoy this and generally aren't terribly high-maintenance for these tasks.

share|improve this answer
add comment

I wouldn't call that a lazy programmer. Sounds more like an incompetent programmer. A true lazy programmer knows how to do all the things you've mentioned, but still plays WoW all day long. Those kinds of programmers sometimes need a little inspiration. An incompetent programmer needs to be fired.

I say fire them because even if you do get them to do their job (write code) it's likely to be riddled with bugs and security holes.

share|improve this answer
add comment

At times it may just be the person is just not interested in what they are doing. Some people just need to find their niche.

One gal just would not/could not do the middle tier, back end or windows forms development. So we tasked her to spiff up the interface of a little used web app just to get her out of our hair.

She did wonders for it. It ended up pretty and fast and intuitive. She became the best web interface developer we had. And she was about a week from being fired.

Another developer sucked until they started doing end user testing. Couldn't really program but could find all kinds of bad interface design and worked really well because they knew programming enough to work with the developers and end users.

My suggestion is to put your lazy developer on different tasks until you either exhaust the tasks available (then fire them) or find what they are good at within your organization.

share|improve this answer
add comment

In your shoes I would bring this to the attention of my boss. This means that either you are told that it is part of your job (in case you can ask for how much time you are to spend on this) or that the programmer is told to change things (in case you can complain if they doesn't). In any case management needs to know that there is a potential bottleneck here.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.