Teaching Computer Science (CS 198) is a 4 unit class for new CS106 Section Leaders.

The CS 198 ProgramEdit

Unlike most classes at Stanford, where discussion sections are typically taught by graduate TAs, the CS 106 classes employ undergraduate section leaders to teach discussion sections. Undergraduates have proven highly effective in this role; they know about Stanford computers and introductory courses, and are close enough to students in intro CS to understand their problems. The CS 198 program consists of a class that prepares new section leaders to teach, as well as a support structure for both new and experienced section leaders, TAs, and lecturers in the CS 106 program.


CS 198: The ClassEdit

CS 198 is a 4-unit class taught Autumn, Winter, and Spring by the CS198 Coordinators. In their first quarter of section leading, all new section leaders enroll in CS 198. The class contains seven required teaching workshops (1.5 hours each) in the first few weeks of the quarter. However, CS 198's four units are primarily allocated to recognize that the time spent teaching, grading, and helping students is also a learning experience. Enrollment in CS 198 is limited. Prospective SLs can apply midway through each quarter to enroll in CS 198 (and begin section leading) in the next quarter at the CS 198 Website.

Staff MeetingsEdit

The CS 106 staff holds weekly staff meetings, typically lasting between 60-90 minutes. This is a time for general announcements, assignment explanations from the lecturers, and for the individual courses to discuss the upcoming section handout and grading issues.

Section LeadersEdit

Section Leaders ("SLs") are primarily responsible for teaching a weekly CS 106 section, typically containing between 8 and 12 students. In addition, they are responsible for attending lectures and weekly staff meetings, grading student assignments, and holding Interactive Grading ("IG") with each student. Interactive Grading is a one-on-one session held between the section leader and the sectionee for each assignment. This is an opportunity for students to get more detailed personalized feedback about their assignment and to ask for conceptual clarifications on an individual basis. Section leaders are also responsible for helping to grade the midterm and final exams. Finally, each section leader is responsible for staffing the Tresidder LaIR for two hours a week. During these hours, they answer student questions, help debug code and, in general, try to be helpful.

All new section leaders enroll in CS 198 and teach section for CS 106A. After the first quarter, section leading is a paid position. Experienced section leaders can teach any CS106 class, enrollment permitting.

Course HelpersEdit

Course helping consists of staffing the LaIR anywhere from 4 to 10 hours per week, and is primarily intended for staff members whose schedules are too busy to teach a full section in a given quarter. Only section leaders who have already completed their first quarter are allowed to course help. Depending on enrollment, course helpers may also be expected to grade assignments for SCPD (remote) students, and participate in exam grading. Course helpers are also required to attend weekly staff meetings.

CS 198 CoordinatorsEdit

The CS 198 Coordinators are two students (typically former SLs) who run the day-to-day business behind the CS198 program. They run the quarterly application/hiring process, teach the CS 198 workshops, run weekly staff meetings, maintain this website, and handle CS 106 section assignments at the beginning of each quarter. Coordinators manage a staff of approximately eighty people distributed across CS 106A, CS 106B, and CS 106X – handling lecturer, TA, section leader, and student concerns regarding the CS 106 courses – and work continually to improve the CS 198 program. Lecturers and Teaching Assistants CS 106 lecturers and TAs handle most administrative issues specific to their course. They create assignments, section handouts, exams, and grading criteria; handle regrade requests; prosecute honor code violations; and submit University grades. Although many CS 106 lecturers and TAs are alumni of the CS 198 program, they are hired directly by the CS department, not through the CS 198 program.


CS 198 was first offered as a class in the 1983-1984 academic year, taught by former CS Assistant Chair Stuart Reges. Over the next five years, the CS 198 program gradually took on its current form, with undergraduate section leaders teaching CS 106 discussion sections and veteran section leaders acting as CS198 coordinators. Reges and coordinators John McGrory and Jeff Smith presented a paper at SIGCSE 1988 describing the benefits of this structure, entitled "The Effective Use of Undergraduates to Staff Large Introductory CS Courses"

For SIGCSE 1995, CS 198 Coordinators John Lilly and Bryan Rollins followed up on this discussion, describing the CS 198 support structure and the section leader community in "Using undergraduates as teaching assistants in introductory programming courses: an update on the Stanford experience."