This problem is particularly acute in CS, which has a lot of graded assignments where it is possible to ask for help on something that will be graded.
Why TAs give in to this
Teaching is harder than doing
Sometimes don’t know what else to do
Sometimes (wrongly) assume once they see the answer they’ll understand
Teaching is slower than doing
Sometimes a lot of other students are waiting
Sometimes the student is annoying and you just want to be rid of them
When you try to teach an student that wants the answer, they act uninterested, frustrated, distracted, …
When you give such a student the answer, they act excited, grateful, happy, attentive, …
This can cause doing wrong to feel right
The rookie mistake
Situation: student is stuck on a big problem
Motivation: you want to help without giving them the solution
Action: you give them the next step and leave them to make progress on their own after that
student gets help from another TA, who does the same, giving them step 2
student gets help from another TA, who does the same, giving them step 3
Eventually you help them again, and they’ve made a lot of progress! Feeling good, you give them the next step…
Related good tactics:
Use small example problems to teach/reinforce the concepts needed in the assignment
Provide divide-and-conquer structure so the student has a cognitively-smaller piece to work on first
Just ask questions
Socratic method: ask questions that lead them to realize they already know what they need
Or binary search, narrowing in on the source of the problem
Or forcing them to engage
Stud: I don’t know what to do.
TA: what has you trued?
Stud: I don’t know what to try.
TA: what are some tactics the teacher has discussed in class lately?
Stud: I don’t know.
TA: …because you didn’t go to class or you did but it didn’t make sense?
Stud: didn’t make sense, I guess.
TA: which ones didn’t make sense?
Stud: I don’t know. All of them?
TA: some of the tactics discussed in class can solve this problem, so we should start there. Why don’t you review that material and identify questions you had and then I’ll come back and help you understand them?
how do you know it doesn’t work?what evidence do you have it is broken?what does it do wrong?what is it supposed to be doing that it isn’t?
where is the code that is supposed to do that?
what could cause that to happen?
what have you tried already?
have you tried doing this algorithm yourself on paper?
what’s the closest example we did in class?
does that give you enough information to make progress?
Solve in a different context
If they are stuck on task X and getting past that obstacle requires application of topic Y, work them through topic Y in a different context (not task X). Good contexts include
Examples from class or the textbook
Stand-alone programs that expose just the problem they were having
Note: this is not a good tactic if their problem is they should be able to identify that Y is the applicable topic but can’t.
Make them do something before going on
The solution to laziness is activity
Identify something they should have done but didn’t, tell them to do it and then either wait for them to do it or leave and come back later
Make a boxes-and-arrows diagram
Add print-statement debugging to narrow in on the problem
Look up the error message online
Make a small program that contains just the problematic algorithm so you can work on it without being distracted by context
Rename your variables so they indicate the purpose and meaning of each
Review the lecture notes and explain how the task we are asking you to do differs from the examples in class
Look at them, not their computer
Your job, the thing you are trying to improve, is the student’s mind
The student’s job, the thing the student is trying to improve, is code
You should each look at the thing you are working on
You can learn where the student is confused by looking at their face
You can resist the temptation to code for them by not taking the first step
You help them develop troubleshooting skills when you force them to do the steps involved in troubleshooting
Not looking at their screen communicates your purpose (helping them, not fixing their code) to the students
But it is not without risks
Can feel awkward at first
Increases chance that you treat the few students with unusual errors as if they had common errors
Asking more questions can help counter this
Most TAs take the job because they are nice and like to help people
Nice people often don’t say no very firmly
that question’s a bit too much like what’s on the exam
communicates: if you worded the question a bit differently I would have answered; try again.
encourages whining, persistence in requesting answers, wearing the TA down
A firm no can cut off off-target questions at the source
I’m not going to answer that.
You have successfully restated the homework assignment. Did you have a question about it?
You can answer that question on your own.
That’s a great question. What’s the answer?
Avoid becoming an oracle
In theoretical computer science we discuss orcales, mythical machines that will answer yes-no question instantly and accurately.
Some TAs unwittingly become oracles: they don’t give the answer, but they tell the student if a guess is the answer.
This reduces a task that was supposed to require understanding into one that only requires persistent guessing
Practice dead-pan expressions and letting them go down a dead-end path
You ask them what they think they should do next. They list three options, only one of which will work.
You don’t say let’s try the third one; instead you say sounds reasonable; let’s try them out. Which one do you like most?
They pick a bad one, explore, discover it fails, and then redirect themselves down a different path.
Let’s face it: this happens a lot, sometimes even in classes where attendance is required because it is so easy to find distractions in the classroom.
If a TA has spare time, teaching the material is an option
Usually need to re-direct student to course material
This was answered in lecture. Go review that material is not ideal; students generally resist, and it can be dismissive to those who tried and found it hard to grasp.
Lecture tried to explain how to do this; what parts of that presentation did you find confusing? is better; if communicates both lecture exists and I am here to help, and if they did try but failed to understand it directs them to ask questions
If the student refuses to study the lecture
I don’t like lecture
I found the teacher confusing
I don’t have time
the TA is free to refuse to help
You can look over it and come back with questions or not, your choice, but I’m not going to re-teach the entire lecture just for you.
This can happen for many reasons, the simplest being that with most courses’ grading schemes, you can pass learning only 70% of the material in the previous class, but all 100% could be required for a subsequent class.
Always let them know the are missing a prereq
Encourages a growth mindset: their current failure is due to past omission, not present lack of potential
Three basic options from there
Teach the material. Note this is not your job, nor do we expect you to have expertise in teaching prereqs, but if you have time and ability you are welcome to try.
Refer them to a source they can study on their own. Note that you will not always have such a resource, and should avoid giving bad advice (e.g., don’t say look it up in wikipedia unless you have reason to believe wikipedia explains it well)
Tell them to learn it on their own. A safe default, even if less helpful to the student than some others.
Usually worth informing the instructor
Instructors often have more resources to offer these students
They can also possibly either postpone deadlines or advise dropping, if the missing material is significant enough
Even if the topic is small and easily self-learned, instructor might want to know so similar missing topics can be reviewed in the future
Sometimes (more often in upper-level classes, but sometimes even in intro) you are asked an on-topic question you don’t know the answer to
Giving a guess-work answer to save face can hurt students
Tell them you don’t know, and then
Either say lets explore together and
ask questions, hoping they will lead you to the answer
have them do what you would do to find out (web search, etc)
don’t leave, do this, and return; give them the answer discovery skills you have
walk them through how you would guess and check
Or say let me find someone who might and
get another TA
contact the instructor
This can be a good moment for the student
Course staff learning is a strong evidence for growth mindset
Validates you are not stupid for having this problem
Aside: some TAs are worried that asking for help is a sign of weakness. It’s not; it’s a sign of learning, which we are all doing (even faculty). I’d much rather a TA who is learning to a TA who acts like they know what they don’t. I’d even rather a TA who is learning to one who has learned it all, as they tend to have more energy and engagement.