A free, on-line computer programming course from Stanford University is reaching thousands of … [+]
Stanford University is once again offering its free, online Code In Place class, the third time the popular intro-to-coding course has been made available since its introduction in 202o. It’s a groundbreaking approach other colleges should emulate.
The brainchild of a Stanford University team that included computer science faculty members Chris Piech and Mehran Sahami, and colleagues Julie Zelenski, Ali Malik, Brahm Capoor, and Juliette Woodrow, the six-week course essentially duplicates the first half of CS106A (Programming Methodology), one of Stanford’s most popular courses, taken by almost 1,600 students every year. It teaches the fundamentals of computer programming using the Python language.
Piech, an assistant professor of computer science, and Sahami, the endowed chair of Stanford’s computer science department, developed the initial version of the course with their colleagues in about two weeks during the peak of the Covid-19 pandemic when, because they were temporarily unable to teach in person, they redesigned CS 106A for a broad online audience.
The course is intended for novices and requires no previous programming knowledge. In fact, the lack of prerequisites is celebrated. A FAQ webpage describes the requirements this way: “…you need to be able to turn on a computer. Or, honestly you probably only need to be able to recognize if a computer is on. It is helpful if you already know some basic arithmetic, eg what is multiplication?”
The format involves three main components: weekly lecture videos, a 50-minute interactive section led by a teacher volunteer, and four assignments and a final project. The course starts by introducing programming using Karel the Robot, a programming tool that helps students learn logic and structure by solving relatively simple initial challenges that become increasingly more complicated. In the second week, the course transitions to teaching Python, which is widely used in industry. The instructors also encourage online discussion among the large, diverse, international Code in Place community.
While the course is currently not offered for college credit, students who complete it are awarded a certificate of completion.
Although Code in Place is offered online, is free, and scales to a large audience, it’s not your usual MOOC (Massive Open Online Course ). In fact, what makes Code in Place unique — its secret sauce — is that much of its instruction occurs in small sections of 10 students. This create a low student-to-instructor ratio and ample opportunities for interaction and human connection. These features have been absent in the typical MOOC, which over the years has suffered from large dropout rates.
The Stanford developers started the course with the assumption that the number of people who want to teach computer science and have the potential to do so would be proportionate to the number of people who want to learn it. They were able to recruit more than 900 volunteers to lead the small, weekly interactive learning sessions in which more than 10,000 learners from 120 countries eventually enrolled. This resulted in, to their knowledge, “the largest group of section leaders in a single CS1 course offering and the most small group interactions. “
The completion rate in the first class in 2020 was more than 10 times that reported for similar MOOCs. In addition, 99% of the volunteer section leaders taught through the entire duration of the course, suggesting the potential for large scale, volunteer-driven education. From that first go-around, 34% of the students indicated in a survey that they would be interested in serving as section leaders for future offerings of the course.
In a second offering in 2021, the total number of learners reached 21,000, taught by 2,100 volunteer instructors, maintaining the 10:1 student-to-teacher ratio. With the latest (2023) version now underway, a total of about 30,000 students have enrolled in the course and 3,000 instructors have volunteered to teach the small sections.
The third iteration of the class features some new enhancements. For example, instructors now can “push a button” to make themselves available for just-in-time “office hours,” offering one-on-one online tutoring for students who are in need of help. And more AI tools for grading and providing feedback to students are also being added to the course. Piech projects that about 60% of the students will complete the course this time.
The volunteer instructors are drawn from the ranks of retired teachers, industry programmers, college students studying computer science, and former Code in Place students. They receive training for their instructional duties from Stanford faculty with the assistance of 24 teaching assistants and a couple of graduate students.
I spoke with Chris Piech, who told me how gratifying he had found the entire Code in Place experience. “Opening up the teaching pathway to so many people and creating this opportunity to make human connections with so many learners is really thrilling, and it shows why we love education,” he said.
While the opportunity to include a volunteering teaching gig at Stanford on one’s resume is no doubt a drawing card for some volunteers, the chance to be a teacher — to participate in a community of learners regardless of the host institution — might be an even stronger motivation according to Piech.
“We’ve discovered that almost as many people want to teach computer science as want to learn,” he said in a previous university article about the course. “It’s inspiring how many are willing to devote countless hours volunteering for Code in Place.”
“Coming together as a community of educators to help spread the joy of programming to thousands is both humbling and uplifting,” added Sahami. “It’s honestly been one of the greatest experiences I’ve had as a teacher.”
Code in Place has a host of educational implications. First, other faculty are already exploiting its potential for well-designed pedagogical research. A team of Stanford researchers, led by Dora Demszky, evaluated an automated tool that gave section instructors feedback on their use of an effective educational practice known as uptake, where teachers acknowledge, reinforce and build on students’ contributions.
Using a randomized trial of Code in Place instructors, they found that the tool increased teachers’ use of uptake, improved students’ rate of completing assignments, and enhanced their overall satisfaction with the course. Other research investigating students’ randomized access to ChatGPT in the course is also underway.
Second, extensions of the concept could occur in any of several ways. For example, it could be expanded to cover the full CS106A. Piech indicated that some early discussions are currently underway with other institutions about collaborating to offer the course for credit.
In addition, the small section format could be duplicated for other subjects where there would likely be an ample supply of qualified volunteer instructors allowing scaled courses to be offered at low cost.
Finally, the possibility for educators to engage hundreds of thousands of new learners in courses that can unlock new opportunities for them is obvious. As Matthew Rascoff, Stanford’s Vice Provost for Digital Education, noted when he first told me about Code in Place, “if universities are serious about a mission to democratize education, this course is one terrific way to accomplish it.”
Colleges are seldom hesitant to borrow good ideas from one another. Code in Place is a really good one, ripe for the borrowing.