4 tips for running a large university class

Guest post by Chris Jeng

Gradescope
Gradescope Blog
5 min readFeb 2, 2017

--

Recently, Berkeley EECS classes have been expanding a lot in capacity. For example, CS 70, the Discrete Math course at Berkeley, has grown from 150 students to over 700 students over the past 6 years. We’ve had to rapidly develop solutions to manage this influx. Here are four strategies we use to run our class more efficiently. They may be a bit particular to Berkeley, but the intention is to share as much of the generally applicable knowledge as possible.

Hire fantastic teaching assistants

It would be ideal if you had a close-knit group of superstars who always take initiative when things arise. But this is much easier said than done. Suppose you have 10 TA slots to fill. Simple, but sloppy ways to hire are:

  • Immediately hiring students who have done research in the area
  • Immediately hiring students who received extremely high grades in the class

Subject knowledge and grades, however, don't always indicate how well someone can actually teach your average B-level student. Teaching is a skill that is hard to glean from a piece of plaintext, so you should consider putting more time into choosing the best applicants.

So then what’s the best way to hire TAs? There is no “The Best Way”. Here are some things you can do to get a better gauge of your candidates. The more you do, the better, but it costs time.

  • Easy Send out a Google Form asking why they want to teach, and why they think they’ll be good at teaching. Ask them if they have ideas for the class (“Hey Professor, you should hire me because I have this really great idea for the first programming project.”).
  • Medium If they have teaching experience, ask their instructors for feedback on working with that person.
  • Hard Invite your top applicants for 15-minute interviews where they prepare a 5-minute in-person lecture on a related topic. If you have already have secured your head TA, you can ask them to help you interview, too.
  • Too hard, don’t do it Invite every applicant for an hour-long interview. Realistically, interviewing ~2x your capacity seems appropriate.

One last note: Try to avoid picking all graduating seniors, or else next year’s staff will have no returning veterans.

Designate a head TA

There are tons of little logistical things that will pop up around every corner. Let me give you some real-life examples:

  • Dear Professor, I got very sick yesterday, can I have a two-day extension on this homework?
  • Hello Professor, I am going to be out of town next week, so can I take the exam another time?

I lied. These are not real-life examples, because in real-life the emails are much longer. It would be wonderful if common requests like deadline extension and alternate exam requests could be delivered to a magical box that would handle them within 24 hours.

Such a magical box exists. It is called the head TA’s inbox. Your head TA can help set up the infrastructure for handling things like these and should have the power to delegate jobs away to other TAs.

This is my strongest recommendation of this post: designate a qualified head TA. They will help you manage literally everything.

Don’t just use Gradescope, use it efficiently

Since you’re reading this post, I’m assuming you use Gradescope. The bigger your class, the more time you save by using Gradescope to grade vs. grading by hand. No justification needed. Here are some tips on how to maximize your use of Gradescope:

  • Scan exams efficiently. Cleave off staples with the batch paper cleaver (way better than a TA-distributed-scissors system), and scan with a cheap DPI (150x150 is good enough, but most scanners default to 300x300 or similarly overkill resolutions). Avoid allowing students to submit scratch paper, this makes the number of pages inconsistent and isn’t scalable.
  • Flag hard-to-grade submissions for escalation, and move on. When grading, the worst time sink ever is if the grader hits an ambiguous case, and has to think really hard about how to grade it. Easy fix: designate a TA as “the captain” of a problem, and they can handle all escalations. So then, anytime another grader comes across a difficult case, just flag it with a temporary “come back to later” rubric item, and move on! Later, the captain can easily see all the submissions that were flagged, and resolve them.
  • Assign different questions to different graders. Reserve easy-to-grade questions (such as multiple choice questions) for less experienced graders. The more experienced TA’s can focus on building rubrics, handling grading escalations, and doing everything in their power to avoid big grading mishaps.

Some other free software worth mentioning:

  • Slack. So wonderful for work-related communications. You can create separate channels (e.g. “exam-development”, “proj2-development”, “office-hours”).
  • Piazza. Allows for anonymous question asking (only anonymous to peers). Way better than asking questions via emails.
  • Previous years’ course materials. Reuse great assignments. Revise and reuse the almost-great assignments. (Note: Gradescope lets you duplicate previously used assignments and their grading rubrics.) Building up a completely new version of a course is an extremely ambitious and physically/emotionally taxing endeavor. If there is anything from the past that might save you work, check it out!

Delegate as much as you can

Delegating recurring jobs is a wonderful thing.

  • Who schedules alternative exam accommodations? Delegate someone for the semester.
  • Who is in charge of releasing weekly homework solutions to the course website? Delegate someone for the semester.
  • Who takes notes at the staff meeting? Delegate someone for the semester.

Literally delegate any category you can think of! This will help balance workload more evenly among your staff. Make sure the head TA knows they can delegate, too, because they are helping you run the class. It’s probably even okay if they delegate to the point that they actually do no repetitive work.

What about random, one-time jobs?

Often, small but necessary things on the to do-list never make it to the done-list, without a hero TA shouldering on too much work. Instead of putting another task on your best TA, pull a name from your Lazy List. The professor should keep a Lazy List. A Lazy List is a secret digital or mental list of TAs who haven’t contributed much recently.

Professor Peter, remembering Lazy Larry was absent for midterm 2, should ask “Lazy Larry, could you handle this?” Most likely, the reply will be yes. Then set a deadline for Lazy Larry in advance of when you'll need the task complete.

The key to success and keeping your sanity when teaching any large course is effective delegation. Believe in the team, help the team, and don’t give up. And don’t ever forget why you’re teaching and what you hope to accomplish.

Chris Jeng is an EECS major at UC Berkeley and was a TA for CS61B, Java/Data Structures.

Note from the Gradescope team: We’re looking for more teaching tips to feature on our blog. Interested in sharing your experiences? Contact team@gradescope.com with your idea.

--

--