>teach fishing instead of giving out free fish.
Give someone a program and frustrate him for a day, teach him programming and frustrate him for a lifetime.
There are posts where I just correct the code or post an example. But if someone posts code, without posting the errormessages even, just correcting his code will make him come back at the very next errormessage. What we need to teach is how to react to these messages. What they mean. I know I was stumped when my compiler gave out some garbage message, uncomprehendable by all but my C teacher. But this is the first thing to learn. The compiler is almost always right. Ignoring his advice because of lack of understanding it is giving away valueable help.
Also, if I find code for the problem in my helpfile ( MSDN ), I wonder why the one couldn't search himself. Posting the code will make him ask again with the next question. Posting a help how to use a help will enable him to solve his problems himself.
Learning a programming language is a nice thing. Learning how to learn is far more important. Because at one point in your life, there won't be people to ask. If you only get prefabricated answers and swallow them, you will never get better than your teacher.