In my IB Computer Science class I am routinely asked by... pretty much everyone how to do X or implement Y. I'm the only person with any significant programming experience in the class and I do not necessaries mind teaching people about programming but so many of the questions could be simply solved by doing a little investigating.

What are some ways I could try to teach my fellow students how to be self-reliant programmers?

All I can really think of is being a Google ninja & learning how to use an API.

  • 4
    This is a dupe of another question. Suggested good answers included this advice: call yourself a tutor and charge them a decent hourly rate. – Job Feb 13 '11 at 1:54
  • 1
    I'm with Job. You could have Googled/Searched this site and found answers. – JeffO Feb 13 '11 at 2:06
  • 1
    Hmmm a person asking a question about how to teach people to find the answers to their own questions when the answer to his own question is easy to find. I hear Alanis singing in the background. – Michael Brown Feb 13 '11 at 4:21
  • @Jeff, so you are telling Glenn to be self-reliant and use Google to find his answers? – user1249 Feb 13 '11 at 9:41
  • Yeah yeah yeah, I get the irony of me asking this question. I just thought I'd ask ya'll since there has to be at least one person who knows how to teach. – user7007 Feb 13 '11 at 13:56

Build a fire for a man and he will be warm for a night, set a man on fire and he will be warm for the rest of his life.

As a development manager I encounter this issue a lot with the more novice programmers. It is very frustrating when you help them with an issue and they seem to keep coming back to you for the next step instead of running with it.

The best advice I can give, and that has worked well for me, is to stop giving them answers and start giving them directions. That is, tell them where to find the answer or give them hints that should be enough to get them pointed in the right direction of the solution. People have no incentive to abandon a method that is working, and right now that method for them is going to you for answers.

| improve this answer | |

Firstly, if you're showing them software patterns, stop doing that.

Seriously. For awhile, anyway.

Software patterns, plugins and libraries give students the impression that all programming is about is stitching together bits of code, and makes them lazy, because they don't think for themselves.

Anyway, the single bit of advice I can give you is this: You can tell them how to do it, you can show them how to do it, or you can tell and show them how to do it and then make them do it while you watch. The third approach is by far the best. If that means making them perform a Google search, do that.

The one thing you shouldn't do is just tell them the answer.

| improve this answer | |
  • +1: Software patterns are ways to guide the experienced, but shouldn't be gone into in depth until you understand the forces that drive them and their contraindicators. They're not recipes, they're gestalts. – Donal Fellows Feb 13 '11 at 8:40

The problem is not that they are asking you, the problem is your inability to say NO to them.

We all need to learn to say no to other people even if it sometimes feels hard but as the old saying goes: saying no to others is saying yes to yourself.

| improve this answer | |