Hacker News new | ask | show | jobs
by Mahh 4892 days ago
I'm a CS student at the University of Washington.

We do something [that I consider] interesting here to staff TAs for courses, which is hire undergraduate teaching assistants. Generally, a course will have one head TA who is a grad student, and multiple undergraduate TAs. I've TA'd for a while as an undergraduate, and it's been a really great experience for my career.

Especially in the intro courses and lower level courses, I don't think that it's necessary to hire computer science gurus -- it's actually easier to find undergraduates who are capable and passionate for teaching than it is to find graduate students (partly because there are more undergraduates).

Some documents produced by one of the lecturers who I work for as a TA.

http://www.cs.washington.edu/public_files/publications/msb/h...

ftp://ftp.awl.com/cseng/authors/roberts/cs1-c/documents/ugradtas.txt

6 comments

Brown has been doing this from the start of its CS department in the 80s (this probably developed because we don't have very many graduate students), as far as I can tell. The only difference is that the undergraduate Head TAs are typically "higher" in the food chain of responsibility than the Graduate TAs (who are more responsible for course development). This worked incredibly well: in 2011, one of our three intro sequences (the one meant for people who knew they wanted to do CS, but don't have the background in it) went from an enrollment of 70 students to 200. We managed by scaling the undergraduate TA group from 11 to 20 (with two, instead of one, HTA), and assigning a good number of those TAs to work on better automation for things like grading.

I've been a TA for three years now, and I've probably gotten more from it than from my actual classes. And because we see what the class needs to teach, as well as what the class has taught in the past, we're actually a lot better (IMHO) than grad students (and even many professors) at figuring out how to change the course to push students further.

As our professor last year put it: "I am the Pope of CS17. The head TAs are the Roman Curia, the TAs are the dedicated priests, and the students are the Faithful."

http://teachingintrotocs.blogspot.com/2011/09/teaching-with-...

University of Virginia does this, too, although they often just work under the professor that teaches the class. It's a great experience, all told, since you get really fluent in the class material, and great at debugging if you're in a lower class where the TAs help with that. The pay is comparable to most other on campus jobs, but it's much more engaging than working a gym desk.

However, even that hasn't completely met the needs of the current enrollment deluge: I'm glad I got my requirements out of the way early on, because there are an absurd number of CS enrollments. They recently capped one of the major tracks (the BA) because there were simply too many students.

Edit: Undergraduate at UVA. Also, I think undergrads are possibly a better option than grad students: since we have actually taken the course, unlike most grad students.

This model requires two things - a very competent Director of Studies who herds the TAs, and is also requires sufficiently competent undergrads. One would think that at Yale this will be less of a problem, but at lesser institutions, where half of the incoming class has problems with mathematics at the level that is required there will be problems. And that is why the Director of Studies needs to be given some authority to throw out incapable TAs, or else there will be a case of blind leading the blind.
I was a TA as CS undergrad in Australia, as were many of my friends. I am obviously biased, but I think we were at least as good as half a grad student, if not a full one.
That's a very smart model, particularly for programming.
The University of Chicago has begun to do this, as well. It's uncommon for UofC to fall into technological trends.
This is sort of interesting because the Math department at UChicago has had undergraduate TAs for a long time for at least the first year courses, and I believe a couple of the second year courses, but it seems only recently has the CS department done the same for its first year courses.