I don't think anyone is arguing that writing features isn't helping the company in general, and the individuals that asked for it - but that's not the only way developers can help other individuals within a company:
- Developers can ask other developers questions when they're stuck on a certain problem. In my experience, developers waste far more time when they're stuck on a problem then when they're interrupted.
- QA / PM / whoever is on your "team" can ask quick, simple questions, that are either too small for an e-mail, or would seriously slow them down if they had to write the e-mail, wait for a developer to check e-mail, write a response, etc. Again, in my experience, developers routinely underestimate how much inefficiency having QA / PM / whatever blocked while they wait for information from a developer generates.
E-mail has it's uses, and the fact that some questions are better suited to a quick face-to-face interruption doesn't mean that every question is, but there's definitely cases where it's not the right tool for the job.
> QA / PM / whoever is on your "team" can ask quick, simple questions, that are either too small for an e-mail, or would seriously slow them down if they had to write the e-mail, wait for a developer to check e-mail, write a response, etc. Again, in my experience, developers routinely underestimate how much inefficiency having QA / PM / whatever blocked while they wait for information from a developer generates.
It should slow them down. If they are blocked multiple times a day, it isn't the communication method that is the problem, it is the process. Interrupting developers multiple times a day is not the solution.
- Developers can ask other developers questions when they're stuck on a certain problem. In my experience, developers waste far more time when they're stuck on a problem then when they're interrupted.
- QA / PM / whoever is on your "team" can ask quick, simple questions, that are either too small for an e-mail, or would seriously slow them down if they had to write the e-mail, wait for a developer to check e-mail, write a response, etc. Again, in my experience, developers routinely underestimate how much inefficiency having QA / PM / whatever blocked while they wait for information from a developer generates.
E-mail has it's uses, and the fact that some questions are better suited to a quick face-to-face interruption doesn't mean that every question is, but there's definitely cases where it's not the right tool for the job.