I'm a TA/grader for an online course in introductory programming. We have students ask us questions related to homework/labs/etc. on Piazza where we can have quick back-and-forth with questions and answers.

However, some students ask questions that are either require very basic logic, or are one of the first parts of the course. Also, some students ask for what we think of their code after every little change.

I (at least) try to ask them back questions that will lead them logically and to think critically about the material, and to come up with a solution themselves. However, this leads to not much success.

My question is how to best respond to students who ask us these questions.


4 Answers 4


You refer to a "quick back-and-forth" in your question. A danger with being too responsive is that it becomes easier for a student to ask the TA than it would be to reason it out on his own, look up material from earlier lectures or from the Internet, etc. It also encourages students to "check in" with the TA more often, e.g. about tiny changes to their code.

Perhaps limiting your responsiveness could help. For example, announce that you will visit Piazza at 4 PM every weekday and answer all the questions that have accrued since your last visit. Don't answer questions multiple times per day.

That way, students won't expect immediate "coaching" from the TA, and might be more motivated to work through small problems themselves.

  • 11
    Or just throttle back the reply rate for those who seem to be over-reliant on your advice. Commented Feb 21, 2014 at 9:45
  • 18
    @DavidRicherby Expecting students to infer that you won't respond immediately (to some of them) seems less effective than applying a policy across the board and explicitly telling them about it. Also, rate-limiting some students and not others seems like it could go badly - students won't understand what's going on and will just get frustrated and angry.
    – ff524
    Commented Feb 21, 2014 at 15:40
  • 3
    I reccomend an explicit policy that no (non-administrative) question on Piazza will be answered by the course staff in less than 4 hours, or between (say) 9pm and 9am. Of course, other students can answer, and staff can flag those students answers as good, before then.
    – JeffE
    Commented Feb 22, 2019 at 9:00

My answer is a bit tangential, but should help somewhat.

Archive your Q&A: I face similar problems, but on an annual, seasonal base. Every semester I find myself answering the same fundamental questions. Then I thought I should probably spend my time on more valuable activities, so for different courses I set up a WordPress or wiki site to compile a list of Q&A. Whenever there is a question e-mail to me, I posted the question (in a de-identified format) and my answer. Students can comment on the blog or directly edit the wiki if they have anything to add.

Now, six years down and the sites are going well... I can't be happier that I made the decision. The initial investment was high, but it started to pay off pretty much instantly.

Provide a questioning protocol in the syllabus: In my syllabus I also included a section called "What to do if I have a question?" In the section I put information about how to search different resources, how to test the codes step by step, how to find a popular discussion board and what are some I would suggest, what other reference books one can use for more/less advanced readers

I specifically explain how to properly ask a question in e-mail. For instance, I specify that in the e-mail they should describe what they are trying to achieve, software that they use, data set that they use, problem (with relevant error message and screenshot.) I also specify what are not the right ways to ask question, which includes:

  • "Please take a look and see if I am on the right track." -- We do not check your homework without you specifying a question. The grade will tell you if you were on the right track. And the suggested answer scheme will guide you to improve your work

Consider giving some very explicit hints, and ask the student to identify what went wrong: This one hits me hard, because I felt giving the steps to them make them learn less. However, there have been some students who were really lost. And in those case, I would consider calming them down by providing an anchor point, which is the steps to the right answer. I then follow up with them by asking "Now, you have the suggested steps guiding you to the answer, compared to your original scheme, can you identify what might have gone wrong?"

Be very sure that you did give enough examples and self-assessment opportunities: When developing questions, I will make sure to start with some that are very similar to the examples I show in class or notes. Sometimes, we may want to try to tweak the questions right from the get go by introducing what we think are "simple logic." That, to me, is not the correct approach. If the task is how to deal with XYZ, then show them how in the class, and then test them the exact same skill sets in the beginning of the assignment. From there and on, you can start introducing slight variations, so that now it's about XY'Z... just a bit of a twist, bit by bit.

For us who have sorted all topics nice and tidy in our brain, we can immediately tell the unimportant from the important (think a super nice walk-in closet on a lifesyle magazine.) For the students, their pieces are like a pile of things in a dorm room. For that reason, I wouldn't worry too much if they ask seemingly very simple questions... because when you don't have all the pieces laid out structurally, some simple stuff can look huge.


If some of the questions are very basic, they could probably be answered by fellow students.

I often encourage students to answer questions posed by other students on the discussion board. It's nice to log on and see a question already answered, even before I've read it. One professor I know even awarded some extra credit to students who answered questions, with excellent results.

Also, you could also provide some feedback that helps define the ground rules as you go along. For example, early on in the term, at the end of an answer, you could append something like this:

I didn't mind answering this question, since it's still early in the course. However, as the course progresses, I'm expecting this forum to be used for more substantial questions, rather than simple checks. Students shouldn't need to ask for help here for such basic issues; this isn't supposed to be the first place you go every time you encounter a small snag. Make sure you've put in a good effort into solving your problem first.

Maybe not every student will get the message, but such feedback may steer most students toward the desired behavior.


When I was a TA for a computer programming course for non-majors, I would give a lot of assistance for a while, but stop short of giving the answers away. This allowed the ones having a difficult start on the material to get started, but they could see that I was not going to "spoon feed" them. When they were stalled on a critical issue which I knew they had been instructed about, I would just redirect them with questions or refer them to the source material.

Normally, they realize what I am doing and then have the requisite "ah ha" moment and come up later to explain what they had figured out on their own. I would confirm it and everyone was happy. I guess I call this "being an adult", but I suppose it takes a lot of discernment and mastery of the material, plus familiarity with handling the TA situation. (As I said, being an adult.)

I had one decisive moment when I was a student and the TA pointedly did not explain what I was doing wrong in a programming assignment. I learned what I was doing wrong on my own, although it took a while, and I never forgot the lesson, and I was grateful to the TA, and I tell the story every chance I get. (See? It is catching.)

One thing I do not agree with is to expect other students to be available to answer such questions. It is fine if someone wants to "help", but then they are taking on the responsibility (for being an adult) and I don't condone or condemn. No one should be expected to teach their peers: that is not why they came to class.

(Of course, this was ages ago when there was a "computer lab" because students did not have their own computers, let alone online classes or resources like discussion forums. I guess adulthood has changed.)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .