Skip to content Skip to navigation


Computer Science

Jun 2017
My goal is to explore how far we can push the knowledge of programming out into the greater population. There was a belief at one point that not everyone was even capable of learning programming. I’m very skeptical of that. As a woman, I was told at different times in my career that I was part of the population that would not be able to program.

 When someone makes statements such as, “Well, that’s pretty advanced. I don’t think you would be able to learn it,” what they are actually saying is, “I have some power, and I don’t want to share it.” I don’t believe you diminish your power by sharing it. I believe the power of computer programming should be shared with everyone.

As a graduate student I did work in parallel computation and high-performance distributed computing, with applications for big data centers. As computer scientists, we love data! Yet at the same time I was learning how to manage and manipulate data in my research, I began to see how often these same research tools were neglected in the teaching of computer science. Now, as a faculty member at Stanford, my research focuses on computer science education. Rather than teach the way we were taught, or the way that we think will be most entertaining to students, research in computer science education is trying to understand the most effective way to help students maximize learning.

One important area of consideration is making our classrooms more inclusive, so we can begin to move the needle on the lack of diversity in tech. Education research tells us that engineering students respond differently to their first poor grade on a test or assignment. Students who are not part of the stereotypical engineering identity, whether it’s because of gender, race, or sexual identity or orientation, often take a poor grade as evidence that the stereotype was correct. “Maybe I don’t belong after all.” Whereas students who belong to the dominant identity have more resilience in the face of those kinds of bumps in the road. Much of this foundational research work was done here at Stanford by Carol Dweck, and I am working on extending our understanding of how to address these findings specifically in computer science. A key point is helping students understand that these moments are just bumps in the road, but it’s difficult to keep perspective when you’re in the middle of it, facing difficult challenges, and have few role models farther down the road to look to.

To spread awareness of what faculty can do to address these issues, I made a list of easy things we can do to make the classroom more inclusive of a broader range of people: The list is designed for a one-day-at-a-time, one-task-at-a-time approach to solving the problem of lack of diversity. For example, at the beginning of the school quarter, there are several simple things teachers can do. We can put language in the syllabus alongside our existing class policies talking about our belief that everyone can succeed, that we will honor the gender pronoun each student uses, and so on. On the first day of class, we can encourage students to be cognizant of how they treat each other, because it’s not solely up to the instructor to create an inclusive environment, it’s a community effort. In the middle of the quarter, there are more easy things that can be done. I recommend simply taking a moment at the beginning of a lecture to tell the students, “I’m glad you’re here. I appreciate you. I know you’re working hard, and I’m really enjoying working with you.” Many engineering students feel that, because the content is difficult, there’s an intention to push them out – that the faculty want to weed students out. We need to counteract that feeling by reiterating the desire to help them succeed. During the most difficult moments of a course, this can be very reassuring for students.

Amanda Law