When I respond to anyone here, or anywhere else for that matter, I do so to benifit myself as much as them. I have found after 10+ years of coding and working on systems, that I no longer think like a newbie. I just can't. Is this a problem.. well.. yes it is, because I write code and programs for newbies. I would have to guess that 80% of my code is used by people who lack a greater understanding of what it takes to write code or even write a document in Word(TM).
This place keeps my mind fresh with the newbies(ie.. "oh yeah I remember when stuff like that use to baffle me as well") and also learn some new ways of doing things.
So, how and when to respond? The question still is answered by what do I need from their problem. Can I explain the solution without using code at all? There's a challege for me most of the time.
One thing I don't do, and this is just my person feelings on the matter. I don't "lead" people to the understanding. They don't get it, and they are frustrated as it is, most of the time, so I just lay it out for them. Besides, I start to feel like that wise knight in Monty Python and the Holy Grail "And what else floats in water?" I just give it to them and work on my delivery skills. I have found that if I can explain something clearly, My life is often much nicer.
There are those who don't get it and won't get it, and I'm not responcible for that, but I am responcible, or at least I feel responcible to be as clear and effective as I can.
That's my mental spam on the subject. Hope it helps.