3

For the last few semesters, I have taught a graduate-level course (mixture of Master's and PhD students) that has a very substantial data analysis component in which every assignment involves analyzing data based on what was covered in the prior 1-2 week's worth of lectures. The prerequisite is my university's introductory statistics course, which teaches students basic statistics (t-tests, z-tests, linear regression, etc). We recommend a particular statistical language to use and provide coding suggestions in that language, but students are also free to use whatever they feel most comfortable using.

Increasingly, I am finding that students in the course rely on me to solve every coding error or problem they encounter, and in many cases, the top hit of a Google search for the error/problem suggests more or less what I would have as well. Some students are "repeat offenders" in that even when I show them how to use Google to look for debugging help, they still come to me with Google-able questions.

I want to be sympathetic to students who may not have much statistical computing experience beyond the introductory statistics course we teach, but at the same time, I feel that graduate-level students need to be able to solve these sorts of questions on their own. In my field, you cannot survive without knowing how to write code to analyze data, and part of that is knowing how to debug your code when inevitable errors/bugs arise.

Has anyone run into this sort of issue before, and what, if anything, helped?

  • 9
    Take the StackOverflow approach: "Show me what you've done to debug it first." And make them walk you through it step by excrutiating step. – tonysdg Feb 24 '17 at 15:52
  • 5
    I am finding that students in the course rely on me to solve every coding error or problem they encounter, — This sentence suggests that you actually do solve student's coding problems. Stop doing that. – JeffE Feb 24 '17 at 18:19
5

One way that could work is to open a forum or a place for the students do help each other. This would prevent posting incomplete or not clear questions (because no one would like to look dumb) and would help you to debug once for class (maybe you could also collect them and provide it for the next courses). You could then also grade the activity on the forum (at least that helped me to post in a forum for a lecture :).

As tonysdg suggest you could let them know the rules of the forum like in Stack Overflow. Or say that if they (or other students) can't solve their problems in a week (or two) you will step in.

The most important part is let them know how and what do you expect from them before coming to you.

  • My university uses Piazza to do this -- it seems to work pretty well, and it lets you format your code (so you can tell what's a question and what's code). – tonysdg Feb 24 '17 at 21:44
2

Make sure you are explicit with your students that one of the primary goals of the course is for students to take an additional step toward independence.

Encourage them to get an early start on each assignment, so they can contact you as soon as they get stuck; then you can give a pointer to get them unstuck, and they'll still have time to do some more work and then contact you again, well before the due date.

Take some class time to elicit from your students a list of suggestions (to self and others) as to what resources are available to them for those times when they feel stuck. Once you've elicited a good list from them (with additions of your own as needed), review it more than once in class.

You'll need to hide your frustration, and be positive when you talk with them. For example: "As you gain experience with statistics, you will find that you still get stuck sometimes, but you will not freeze like a scared rabbit when that happens. You will start using the resources available to you without panicking."

I like the idea from @tonysdg. Next time, put in your syllabus (and review it from time to time), that when students come to you for help, it is important that they tell you what they've tried so far to get unstuck.

They may find that while drafting an email to you asking for help, they get a new idea of someplace to look (e.g. google, as you said). Perhaps the act of starting to email you in itself will sometimes get them unstuck.

Llopis's idea is also good.

One more idea. You could take some class time to model what the debugging process will look and feel like. Show what a problem looks like, and ask them how they might go hunting for the solution.

You could even give a debugging assignment! Give them some code with a specific bug, and ask them to hand in a printout showing their debugging efforts, tracking their detective work.

Debugging skills could even be included in quizzes.

I suppose in the long run you could talk with colleagues in your department about how students could come out of the introductory class better prepared for debugging in your class.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.