Excuse me if it comes off as snarky, but my main point is only to say that development is about three parts frustration and one part progress (and I'm being generous with the progress). You can't skip the frustration; it is what you are paid to do. Newcomers should be made aware of this, not to deter them, but to be transparent about what the job actually entails.
But if you constantly get frustrated with newcomers, and another guy is always helpful and calm, the newcomers will gravitate to that other guy. If those newcomers advance, who are they more likely to help out with things? If they go to other companies, who are they likely to give a reference to?
Getting frustrated is an emotional response, you don't have to get frustrated.
Eventually Mr. Always Helpful And Calm is going to get frustrated, too. It's about instilling the right mindset in newbies and not nurturing dependent work relationships. I like being Mr. Helpful, too, but I also like to see new devs persevere through all the frustration and bust through to the other side. Teach a man to fish, and all that.
Yes, some level of detachment can help when advising strangers and caring too much may make people act in counterproductive ways. That holds true in other contexts too. But, that is not the only thing in play.
Some people find it easy to stay calm and patient, some much harder. And some are able to recognize that "I am pissed now, better not respond immediately". Yet others are able to be polite and nice even while pissed - e.g. have above average good emotional control.
No, I mean I care. I just don't let people make me frustrated. With the exception of people who are manipulative or assholes, I don't make other people responsible for my feelings. I try not too. It's not healthy to be like "I'll be calm if you learn to act in ways to not me angry."
I guess I just don't have those situations where people keep coming to me and asking me for help over and over again, but even then if there are those people you can sit them down and explain to them to not do that without snapping at them.
I've had people snap at me occasionally (not because I was asking for help, more because they were assholes in the course of doing their regular job) and the only thing that happens is I avoided them and kept a written record of the times they'd been unpleasant in case we ever needed to talk to HR.
That being said, I don't think it's an eventuality that people will always get frustrated with other people. I've never had anybody inspire "rage" in me in work situations. Other than some times I was working on tv sets and people were screaming.