Some Thoughts For Computer Science Teaching Assistants (and Faculty)

Valerie Barr
Valerie Barr, Professor of Computer Science, Union College

I was recently contacted by a student who will be working as a teaching assistant for an upper-level CS course. He remembered that, during a visit to his campus, I had said that the way courses are taught is just as, if not more, important than the race, gender, ethnic background of the instructor. His question was whether I had any advice for him and his fellow TAs about how they could "conduct ourselves or talk about the course material in order to help foster as inclusive and welcoming an environment as possible".

Here is the advice I gave, which I think can be helpful for faculty as well as for TAs, lab assistants, student help desk workers, etc.

1. The most important thing is tone and attitude when answering questions. Many of us in CS (I include myself in this) have to fight against lapsing into a very patronizing tone. It is easy to slip into the "I cannot believe you don’t understand that" tone of voice, or say things like "it’s so obvious". Every time we use that tone of voice, or those sorts of phrases, we send the "if you don’t get it already, you shouldn’t be here" message. While this is likely more of a problem in lower level courses, it can happen in upper level courses as well. An interesting exercise for TAs and lab assistants would be to sit down and collect a list of the sorts of things they have heard over the years (or even said) and then actually say those things in a patronizing tone of voice. That should serve as a good reminder of what it sounds like, hopefully making it easier to avoid talking to students in that tone.

2. If students are working in teams, keep an eye out / ear out for problematic dynamics amongst the team members. Suggest to teams ways of rotating responsibilities so that everyone has the opportunity to play a leadership role.

3. The electronic submission deadline for homework should be set so that it does not encourage macho behavior. Have homework due no later than 11:00 pm or midnight. The problem with a 6:00a.m. or 9:00a.m. deadline is that it encourages very macho "I stayed up all night, I’m hard core, I’m a *real* programmer" behavior. People who don’t handle their work that way are seen as not being a true hacker, as not having real "programming chops", even if the person who didn’t stay up was incredibly organized, completely solved the homework problems, and turned in the assignment hours early!

4. It’s fine to suggest the use of github etc., but understand that not everyone wants to put their work out in the world in that way. If it’s required of all students, fine, but don’t encourage the use of public repositories as a way of measuring people’s abilities. I’m always distressed when I hear that employers are grouping resumes based on what they find in code repositories — this automatically knocks out of the running anyone who does not choose to display their work in that way, and we know that women tend not to use repositories as much because of the level of attack they experience in that world.

5. Periodically look over the grades as a group and see if any implicit bias is in evidence. Are grade distributions roughly the same across all groups of students? Check in about who is coming for help, how much time you spend with people. Are there some people who never come for help, but whose performance indicates that they should? You can’t exactly go up to people and say "what are we doing wrong, why don’t you come for help?", but consider using a quick survey partway through the term to ask students for feedback on the TAs/lab assistants/student helpers as a group.

6. Don’t make a big deal about how you are doing so much and working so hard to be inclusive. Bragging about how sensitive you are will backfire and can make people feel singled out. Do it quietly, and trust that people are likely to learn more and enjoy the class more if they are feeling comfortable in the educational setting you have helped create.

I’m sure this is not a comprehensive list. What do you do in your classes? What can you add to my list? Post your ideas to the comments. Thanks!

Join the Discussion (0)

Become a Member or Sign In to Post a Comment

The Latest from CACM

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More