Teaching to Groups

Advice for leading sections, and other thoughts from shadowing undergrad TAs.

This post was originally written Fall 2017 for CS 61A staff, which leans more towards learning problem-solving skills.

The purpose of discussion and mentoring sections is to provide a space for students to recognize patterns and build more robust mental models by solving more problems without a computer. To achieve this broad goal, we’d like for students to spend time thinking critically about not only the concepts themselves, but their perceptions and understanding of the material. In discussion and mentoring, students have a unique opportunity to get hands on with problems while still in the safety of your guidance.

Here are a few universal principles that encompass the majority of the feedback I give to teachers.

Focus on Ideas

Communicate Intentions Clearly

Develop a Teaching Persona

Preparation and Organization

When preparing for section, plan out transitions between questions so they’re seamless. Consider writing the next question on the board while students are working on the current problem is a good tactic, but consider the opportunity cost because you could instead be spending that time working with students directly.

Experiment with having students work independently at various points and also working together on paper or at the board. Think, pair, share is a great learning technique, with the caveat that students might need some help getting started with a problem for the “thinking” portion to be effective. Students who are more behind often try to solve the problem but don’t know where to start. It’s helpful to put questions to ponder on the board while they’re working so they have something to work on and make progress towards even if they don’t have the full picture just yet. Include things to look for in a problem and guiding questions that you ask to yourself when working on a problem. Help them build intuition for coming up with these questions on their own in the future.

Before the first session, reach out with emails and check-in with them so they’re more comfortable with talking to you. Break the talking barrier the first day: it’s hard to break the ice after three sessions. Get started early, and make it both your goal (and a goal for the students) to get to know the other students in the section. Even if you have difficulty remembering students’ names, just showing the attempt is often good enough.

Teaching Intuition

The best teachers combine the specifics of solving a problem at hand together with exposing ‘concrete intuition’ and steps that help in solving more general instances of the problem. We’re all very talented at explaining solutions and providing effective walkthroughs, but that doesn’t necessarily teach students how to solve problems independently, particularly freshmen who aren’t as experienced in metacognition and generalizing from your walkthroughs.

Because our time with students is extremely limited, we’d like to leave students with skills for tackling problems instead of getting through all the problems on the worksheet. We can use the problems on the worksheet as a guide for exposing the bigger problems and patterns we’d ultimately like to teach students. Make sure to communicate this expectation clearly to students so they know what to expect and how to learn computer science effectively.

Studies have shown that students ask better, directed questions and monitor their own progress through a problem better by having a concrete framework and set of steps to follow. Our job as instructors is to provide a more detailed application of some of the trickier concepts in the course in the framework of a generalizable problem-solving strategy. With recursion, for example, we might want to: