Cultural pedagogy in the CS classroom

One of the wonderful aspects of teaching in an international school is the automatic access one gets to diverse cultures, traditions, languages and histories through student identities. One of the big focus points for me this year has been trying to explore ways of getting students to think about how their work in computational thinking relates to the unique identity they bring to the classroom. It is a work in progress, to say the least, but initial steps in this direction were taken this semester where students in my Computer Studies class designed some representative solutions that link to their identity. I am committed to exploring this area further with the same course next semester when I get a new group of students.

Ready for Rigor framework

My reading around this approach has produced some good learning. In this blog I hope to document some of that learning on different ways in which culturally relevant/responsive pedagogy (CRP) can be constructed in a Computer Science classroom. But before I document my thoughts and takeaways, let us be first clear about what exactly culturally relevant pedagogy (CRP) means. In her book “Culturally Responsive Teaching and the Brain”, Zaretta Hammond summarizes it like this.

Culturally Responsive Teaching and the Brain: Hammond, Zaretta L.

She further goes on to highlight the four practice areas (the Ready for Rigor framework) of CRP. Each quadrant here represents focus areas to think about when planning lessons, designing units and even when creating assessments.

To put this framework in a computing context, I found a wonderful webinar hosted by Omar Shepherd, K-12 Curriculum specialist in Orange County school district, who went deeper into both the Ready for Rigor framework and it’s role within a Computer Science class. The entire video can be found below. Here are the slides for this presentation.

I also found an interesting panel discussion by Michelle G. Lee (CSTA Equity Fellow and CS Instructional Specialist), Charity Freeman (CSTA Equity Fellow and CS Teacher), and Shana V. White (CSTA Equity Fellow and Computer Science and Health Teacher) who explore various ideas of CRP from within the lens of Computer Science education. They start off by highlighting the differences between culturally relevant (pedagogy that is aimed at everyone even if they are not physically present in the classroom) and culturally responsive (pedagogy that primarily addresses present population as a natural response) approaches to teaching. I also liked the link from there to areas of social justice, anti-bias algorithms and looking at computing in a much larger context outside the classroom or school setting.


Applying a computing context to these practice areas also brought up the following literature. A Cal State University research paper titled Computing with relevance and purpose addresses the cultural aspect of computing education. The paper starts off by clarifying the difference between culturally responsive teaching (where the focus is primarily on the teaching practice) and culturally relevant pedagogy (where the curriculum is guided by basing it on approaches and attitudes). A new word for me was ethnocomputing which is a study to connect computing and cultures. An example of a curriculum that considers race, ethnicity, culture, gender and language is the Compugirls program by Arizona State University. It is designed to empower girls become agents of social change using computing as a tool/skill.

The main themes that were looked at in this paper were:

  • Using computing as a way to raise sociopolitical awareness. This included things like writing programs that captured resource availability (such as food and water) in neighborhoods by mapping them. This relates directly to themes like #CSForGood on Twitter.
  • Using heritage and culture as a teaching tool. Such as using design patterns, games, community activities from student backgrounds to design programs. The paper cautions us that to ensure deep and critical use of these backgrounds it is important that they are introduced properly and students receive some training in what these are and why they matter in computational thinking and design.
  • Use of vernacular culture in design and development of solutions. Again, as with anything cultural ensuring sensitivity and guiding students to create a coherent context is vital. Allowing them to use elements from lived experiences (including language, lifestyle etc) requires a deeper understanding of each student’s context before getting to the algorithm stage.
  • Finding ways to personalize the coding projects by looking for community links. Again, this is an extension element that is aimed at pushing the content coverage outside of the classroom – as is the case in any subject area – deeper into the local communities so that developers, companies and even other schools can get involved with software design projects.

From Theory to Practice

One of the key elements of implementing CRP is working our way from the theoretical aspects of these models to practical solutions. Dr. Shuchi Grover, a Computer Scientist at Stanford, wrote a book called Computer Science in K-12: An A to Z handbook on teaching programming. One of the chapters in this book Learner-Centered and Culturally Relevant Pedagogy takes a closer look at specific activities that can support CRP. One of the highlights for me was the relevance piece of why CRP matters in Computing. She underlines three main reasons:

  • to support student identity development
  • to encourage a critique of inequities in computing, and
  • to address ongoing/existing sociopolitical issues.

Through this chapter I also learnt of ECS (Exploring Computer Science) which is a year long research based High School level CS curriculum and teacher professional development program. Some of the practical applications of connecting computational concepts with previous life experiences for students included:

  • Applying algorithm design to construct Native American bead work, rugs, baskets etc.
  • Students exploring local/family recipes to make associations with writing programs.
  • Mapping student routes to school every day to learn about minimal spanning trees.
  • Connecting elements of popular culture that students relate with (music, songs, lyrics) to concepts of looping or linked lists in programming.
  • Utilizing social concerns students had from within their neighborhoods to map out a wide range of solutions using programming, such as food deserts.
  • Embedding storytelling as a way to help students engage with the same concepts using different histories and perspectives.
  • Extending the lessons outside the classroom into families and communities so that the solutions students create are a result of a wide range of collaborative efforts.

Another broader spectrum piece in this chapter is the opportunity CS classes offer students in examining the tech sociopolitical landscape. CRP isn’t just about getting students to connect with the content but also the purpose of it outside the classroom. Be it with racially biased algorithms or privacy concerns in an increasingly automated world, allowing students to debate and discuss these issues creates a greater awareness and can have a direct impact on the way they design and develop algorithms within their contexts.

Inclusive CS education : Beyond the classroom

At the end of the day, CS education isn’t/shouldn’t be limited to CS classes given the range of impact it can have in all subject areas and all walks of life. So schools need to scaffold and build a support structure that allows all students from K-12 to engage with computational thinking in some capacity. I echo our initiative at ISA with #isaFestivalOfCode as a small step in this direction where students, teachers and parents from across the community had a chance to try their hand at solving challenges and creating solutions. I wish to plug a few more informative videos of similar initiatives aimed at making CS more accessible and inclusive.

Takeaways and next steps

  • CRP is not meant to a bag of tricks or activities one can pull out for a unit or lesson and be done with. It is an ongoing dialog which requires clear understanding of the school’s/region’s cultural setting and the relationships one builds within that community.
  • Embedding CRP into a computing curriculum requires that students are given more choices relevant to their identities/realities. This is a slow and gradual process and often best done if the curriculum is designed to be more inclusive and accessible. Designing an inclusive K-12 CS Framework, like the work is doing in the way forward.
  • Collaboration, like all great things, is key. Engaging with experts both within the school and outside (other schools, companies, developers etc) helps create a more cohesive network of inclusion and relevance for delivering the curriculum.
  • Setting up initiatives that allow for everyone to participate in this computational conversation also matters. Without the right direction and equal access to resources (this includes people), creating relevance or response for computing initiatives will not be successful.
  • Celebration matters. Showcasing student work that is celebrating their identity and highlighting how they found relevance with CS is a crucial bridge for others to feel inspired and motivated. To ensure an adequately spread out K-12 CS framework exemplifying student work is the next step.