What I learned teaching a Stanford computer science class to high school students

April 10, 2022, 7:21 p.m.

This past fall quarter, Stanford offered an introductory computer science class to more than 200 talented high school students from around the nation. When I first received the opportunity to serve as a Teaching Fellow for the course, I was particularly drawn to the program’s goal of opening the Stanford experience to under-resourced high school students. Thanks to a partnership between Stanford University and the non-profit National Education Equity Lab, this pilot project introduced the students to programming in Python, web development and other topics such as computer architecture and security. While I was initially excited about teaching students how to code, by the end of the program, I ended up learning a lot about social inequity and how elite institutions such as Stanford have the resources to inspire a whole new generation of students through innovative and accessible educational programs.

During my first training session organized for the teaching fellows — current Stanford students and experienced alums — I was surprised to learn that the high schoolers would complete the same “CS 105: Introduction to Computers” course offered to regular Stanford University students. I started working on my teaching plan with a bit of nervousness because these students were not only taking a rigorous Stanford course, but they were also doing so despite coming from under-resourced backgrounds. However, as we went through our first class together, nervousness quickly turned into enthusiasm. 

As I learned that many of the students were the first in their families to enroll in a college course or pursue STEM education, I was reminded of the National Education Equity Lab’s tagline: “Talent is evenly distributed, opportunity is not.” One student wanted to study Computer Science, hoping to get a high-paying job that would allow her to take care of her mother, who works multiple jobs to support her family. Another student aspired to be an astrophysicist and work on space exploration. Another student, a first-generation immigrant, wanted to be a tech entrepreneur and build products that would empower his underserved community. Many of them hoped to one day attend prestigious institutions such as MIT, Harvard, Yale and Stanford.

Before I started teaching this class, I used to believe that tech was doing a great job at democratizing educational opportunities. After all, many of the same programming and Artificial Intelligence classes that I took at Stanford were freely available on Massive Open Online Course (MOOC) platforms such as edX and Coursera. “The internet has allowed anyone in the world to learn technical skills and rise up the socioeconomic ladder” is a narrative that I have often heard in the Silicon Valley bubble, especially at Stanford, which has produced nearly one-fifth of all unicorn companies. Undoubtedly, information is more readily available than ever in a world where software provides us almost infinite leverage. But my experience with this class made me realize that technology alone will not solve complex societal issues.

When some of the students, who were very enthusiastic in the beginning, started missing classes and assignments, it took me some time to figure out the problem. Students at elite institutions can often be very vocal about what they want. The high school students, especially those from underresourced backgrounds, however, often hesitate to ask for help. As I started actively reaching out to them, I discovered that they were constantly navigating through tough circumstances that were difficult to notice in our Zoom sessions. These included not having access to a reliable computer or internet connection at home; not being able to attend office hours because the timing clashed with part-time jobs; difficulty accessing a myriad of platforms used in an online Computer Science course; and Imposter Syndrome. I learned that these were only a few of the many problems they had to deal with and wondered about how effective MOOCs were at democratizing education. 

After doing some research, I learned that MOOCs have massively underperformed on their promises. Around 96% of all MOOC participants in 2017-18 did not complete their courses. It turns out that tech, on its own, won’t magically “fix” education. On the bright side, however, I learned that the high dropout rate could be reduced by more than ten times through a scalable, human-centered section-leading model that is integral to Stanford’s introductory Computer Science curriculum. In this model, which was also a hallmark of the pilot project, students participate in weekly discussion sections led by a section leader or a teaching fellow who also grades the assignments and exams. The students in my class unequivocally agreed that they wouldn’t have gotten much out of the pre-recorded lecture videos alone. The active learning during live discussion sections, according to the students, was vital to their progress in the course.  

When the day to celebrate the students’ successful completion of the course came, I could not be prouder of what the students had achieved. I am incredibly grateful to Stanford’s Office of the Vice Provost for Digital Education, the Department of Computer Science and the Graduate School of Education’s Transforming Learning Accelerator, which made this pilot project possible. This experience has inspired me to explore innovations in education further and be a part of Emerson Global, where high schoolers worldwide get matched with mentors from top institutions such as Stanford. I cannot wait to see how the incredibly talented and bright students of today will take charge of solving the most pressing issues of our times through technology and innovation.

Brian Sha studies Computer Science and AI at Stanford University, where he has worked as a researcher, teaching fellow, and as a mentor at Qualia Global Scholars. Contact him at brians ‘at’ cs.stanford.edu.

Login or create an account