I'm not sure I agree with this article. As a developer, what I want is autonomy, creativity, and a share of the benefits.
The notion that I'll be happier if you spend $400 on a new monitor or hand it to me as a bonus misses the point. I'd rather be in a position to evaluate the needs of the project and influence where we spend our resources, including money and developer-hours.
Similarly, I don't want to be "given a problem to solve". I want to be involved enough in the decision making to determine what the problems actually are. I also think that's where I can add the most value.
I suspect that a developer who wants you to give him a nice monitor and wants you to give him a task list with problems to solve is probably not a star employee. You may get some nice, predicatable work out of this person, but nothing more.
Sometimes that's what you want. After all, someone needs to write the scripts to batch export the changes in filing status from accounting over to payroll.
But personally, I think that if you're spending a lot of time wondering "how can I motivate my programmers", you've already lost the game. If you've set up your environment correctly, and your programmers are actually in the role where they can give you the maximum benefit, they'll already be motivated.
The notion that I'll be happier if you spend $400 on a new monitor or hand it to me as a bonus misses the point. I'd rather be in a position to evaluate the needs of the project and influence where we spend our resources, including money and developer-hours.
Similarly, I don't want to be "given a problem to solve". I want to be involved enough in the decision making to determine what the problems actually are. I also think that's where I can add the most value.
I suspect that a developer who wants you to give him a nice monitor and wants you to give him a task list with problems to solve is probably not a star employee. You may get some nice, predicatable work out of this person, but nothing more.
Sometimes that's what you want. After all, someone needs to write the scripts to batch export the changes in filing status from accounting over to payroll.
But personally, I think that if you're spending a lot of time wondering "how can I motivate my programmers", you've already lost the game. If you've set up your environment correctly, and your programmers are actually in the role where they can give you the maximum benefit, they'll already be motivated.