2 Understanding Diversity in Computer Science and Computer Science Education
Lauren Vogelstein; Christopher Hoadley; Carla Strickland; Joanne Barrett; Sara Vogel; Bethany Daniel; Stephanie T. Jones; and Computer Science Educational Justice Collective
Chapter Overview
This chapter considers the idea of diversity and why it matters for computer science (CS) industries and CS education (CS Ed). It defines what diversity is and then explores how diversity (or a lack of diversity) impacts CS industries and CS Ed. The chapter concludes with some implications for what diversity means for CS teachers’ everyday practices in their classrooms with their students.
Chapter Objectives
After reading this chapter, I can:
- Define what diversity is and what diversity is not.
- Explain how diversity is related to (in)equity in CS and CS Ed.
- Recognize why diversity is important in CS and CS Ed.
- Identify strategies to recognize and draw on diversity as a resource in my classroom.
Key Terms:
ableism; culturally sustaining pedagogies; diversity; essentialization; funds of knowledge; gatekeeping; intersectionality; invisible disabilities; marginalized/minoritized identities; opportunity hoarding; othering; tokenism; xenophobia
Marilyn’s Story
In Chapter 1, we met Marilyn, a CS teacher who was grappling with how to equitably include all of her students from different backgrounds in her after-school coding club.[1] Marilyn shared her thoughts:
You know, everyone says “do Girls Who Code.”[2] And I have that after school, you know. And you say, “Oh, it’s open to everyone.” But it doesn’t mean anyone feels comfortable. ‘Cause the boys don’t want to go if it says “Girls Who Code.”
But now I’m working with my girls, right? And I’m adding more girls, and they’re doing more coding projects. But what about my Black boys? My Brown boys? My Arab students? Those are kids who are still underrepresented in code. Am I doing a disservice by focusing on a single group? Should I focus on my girls one year and my Black kids the next year? My Arab kids the next year?[3]
How do I equitably do equity? Who do I leave out? Can I leave out somebody? Should I focus on everybody all at once? How do you build equity without being inequitable?
Marilyn raised real concerns, asking questions that don’t have easy answers. However, Marilyn’s description surfaces something foundational to understanding and working toward equity: the notion of diversity.
Marilyn recognized that her students were different from one another. They had different identities, backgrounds and experiences, interests, talents, and abilities. Marilyn also recognized that because of the “-isms” that shape society (like ableism, classism, racism, etc.), her students could be centered or marginalized in school and in computing based on their differing traits. For example, she acknowledged that her students differed around gender, and girls have been historically underrepresented in computing fields. This reality motivated Marilyn to start her after-school coding club in the first place.
But Marilyn was also aware that if she focused only on girls in her program, not everyone, including boys and gender non-conforming students, would feel comfortable or like they belonged in that space. She wondered about how to reach other students whose identities are underrepresented in computing, like Black and Arab students. Marilyn was aware of the diversity that existed in her classes and her students. And Marilyn recognized how limiting students’ identities to only one or two labels, like gender or race, or grouping them into buckets based on labels and trying to focus on different groups didn’t seem to be an ideal solution. She wondered how she could recognize the diversity of her students in ways that would meet all of their needs.
What Is Diversity?
Diversity comes from recognizing a simple fact: people are different from one another. We define diversity as differences in people’s identities, backgrounds, and perspectives. Most often, diversity is described in terms of social categories like age, disability, gender identity and sexual orientation, educational background, language, national origin, race and ethnicity, religion, and socioeconomic status. All individuals have varied physical features, lived experiences, physical, emotional, and intellectual abilities, language and cultural practices, and so forth. Given this reality, no one person in isolation can be diverse. Instead, diversity describes variation in collectives of individuals with differing identities and backgrounds. We emphasize this definition of diversity as something that applies to a group.
People often think that committing to diversity means making a special effort to reach diverse populations or people, where the term “diverse” stands in for members of marginalized groups, or groups whose social categories are devalued by society. For example, committing to “racial diversity” in CS often involves the unstated reality that most people in CS are racialized as white and implies a focus on recruiting individuals who are racialized in ways that are marginalized by society (e.g., Asian, Black, Latine). Representing a diversity of perspectives and experiences matters, as we will see throughout this chapter. However, when “diversity” is used as a stand-in or euphemism for members of marginalized groups, it becomes a harmful way to suggest that a person deviates from the implicit white, male, English-speaking, nondisabled norm that society has deemed “acceptable.” CS teacher Brandie expanded on this idea:
Diversity is such a general term that can mean different things to different people. [It is important to] address the “othering” quality that … the concept of diversity often has. Diversity doesn’t equate to any particular group of people. Diversity is inclusive of all the ways that people are and can be different from each other.
Rather than using the term as a stand-in for marginalized groups, we can use the word diversity to acknowledge variation among the people in a collective. We should also recognize that within diverse groups, there are people whose identities, backgrounds, and practices are implicitly valued and catered to in learning, professional, and disciplinary spaces more than others. This way of defining diversity helps us avoid treating some groups as “other” and can help us recognize which perspectives might be overrepresented (e.g., white males in CS) and which perspectives are missing.
Valuing diversity also helps us ask questions about the systemic and structural factors that create barriers to a group’s participation (see Chapter 5 for more on how to do this). For example, teachers can reflect on how policies that privilege the use of English in classrooms might create barriers for multilingual students’ participation in CS Ed. They can examine their own implicit biases that lead them to perceive multilingual learners as “less capable” of doing computing. They might design an activity that leverages multilingual learners’ expertise to help students critique the usability of an English-only computing tool. Actions like these help educators intentionally create spaces that elevate marginalized voices into positions with power.
How Is Diversity Related to Inequity?
That we differ from one another along many dimensions is a fact about humanity. However, when those differences get filtered through society’s power hierarchies, diversity becomes closely intertwined with inequity. Hierarchies have been created over time through human activities — historical and cultural processes such as slavery and colonialism — and have become embedded in society’s institutions and structures. These activities transform human differences into markers and labels that are still being used by people and institutions to organize and implicitly “rank” people. These rankings systematically privilege some human characteristics and marginalize others. In education, those with socially privileged traits are often afforded more power because learning spaces and teaching practices tend to be designed for them and have their experiences, goals, languages, and interests in mind. By contrast, those with identities that are marginalized by society often experience learning spaces where their identities and cultural practices are not always welcomed, recognized, or valued.
The relationship between diversity and inequity is evident in many of the “-isms” that pervade society. For every dimension of human difference, there is an associated way that biases tend to reinforce inequity. Differences in ability are filtered through ableism, or an implicit or explicit preference for bodies and minds that are socially constructed as nondisabled, creating prejudice for disability and the oppression of disabled people. Differences in physical appearance and place of origin are filtered through racism and xenophobia, or fear or prejudice against foreigners, which impacts how people move through society. How society perceives one’s age, gender, sexual orientation, linguistic background, socioeconomic class, and the many other facets of our identities and experiences shape how people are included (or not) in different spaces, including CS spaces. At the same time, the identity markers people claim and are assigned are not static, and they do not predetermine people’s experiences. There are many factors that shape whether and how people experience oppression or privilege based on their differences across different contexts.
For example, the collective group of school children in the United States is very linguistically diverse (National Center for Education Statistics, 2024). However, power hierarchies around language filter those differences in different ways. In U.S. schools, speaking English is a privileged trait. Children who speak “standard” English as a home language tend to have more access to social privilege and educational resources. Those who speak other varieties of English like African American Vernacular English or those who speak languages other than English must often adapt and learn the “idealized” version of English to access the same opportunities (Chang-Bacon, 2020). Students’ linguistic expertise in language varieties other than “standard” English” gets overlooked or even penalized in school spaces (Flores & Rosa, 2015). Filtering based on linguistic hierarchies creates inequities that benefit English speakers over speakers of other languages. While these trends manifest at the level of most social institutions and structures (e.g., the medical system, the criminal justice system, the education system), whether or not and how an individual experiences linguistic injustice also depends on their own particular identities, circumstances, experiences, and contexts.
Because everyone has many different identities, the concept of intersectionality is also important in understanding diversity. Intersectionality captures the reality that people experience inequities in ways that are unique to how their identities intersect and overlap. For example, Marcos, a Latine, bilingual English/Spanish-speaking child with a disability would experience oppression related to disability differently than his peer Ethan, a white, monolingual, English-speaking child. Marcos may experience disability as it intersects with racial and linguistic oppression, while Ethan’s experiences with disability may be shaped by racial and linguistic privilege. We examine the role of intersectionality further in Chapter 5.
As we’ll see in future chapters, the drastic inequities that exist in CS and CS Ed often mirror the broader institutionalized and systematic ways that people can be oppressed or privileged based on their differences. How people experience inequities in CS are shaped by the identity markers society has assigned them in different settings and how those markers have been filtered through the social power hierarchies operating in those settings. These realities significantly impact the CS field and students’ experiences in CS classrooms.
Why Does Diversity Matter in CS Industries?
Working toward equity in CS Ed requires understanding why diversity matters. In this section, we consider why diversity is important to the CS industry. We critically examine diversity in the CS industry because many students will be interested in applying their skills and knowledge there and because tech companies play an outsized role in funding and supporting CS Ed. As a result, the industry’s values and track record on diversity matter. We also recognize that promoting diversity in CS industries is not the only reason to care about diversity in CS Ed, and we consider other reasons in the sections that follow.
Diversity in Computing Industries
Although people vary widely, there is a consistent pattern of homogeneity, or sameness, in the CS industry with respect to demographics like class, disability, gender, language, and race. For example, 78% of CS bachelor’s degrees awarded in the United States in 2021 went to men. Of non-international CS degree earners, 81% were white or Asian American (Zweben & Bizot, 2022). These statistics highlight how the CS industry tends to be homogenous in terms of gender and race.
Similarly, privileged communities who hold identities that society has constructed as “normative” (e.g., white, English-speaking, upper class) have historically been afforded preferential access to the tools, capital, and knowledge needed to create computational technologies and to use them for their own ends (see Patitsas et al., 2014, for a gendered example). These groups’ preferential access and power has been maintained in many ways, including through practices like gatekeeping (policies and structures that limit participation in computing for marginalized groups) and opportunity hoarding (processes through which privileged groups control and prevent access to resources for marginalized groups; see Ko, 2024, for a fuller discussion).
The history of CS has translated into the contemporary perception of a “bro” culture in coding and computing: white male coders in jeans and hoodies sitting alone at their computers for long stretches of time. When presented with this description, CS teacher Anjeliqe noted that it was “the exact description that students give you when you ask them what a computer scientist looks like.” Media reflect this perception back to us in ways that emphasize the lack of diversity in the CS field as normal. For example, HBO’s television show Silicon Valley represents CS professionals as stereotypically white, male, college dropouts whose computing expertise will allow them to get rich. These representations subtly broadcast the idea that those who do not look or act like a stereotypical coder do not belong in CS and would find it difficult to fit in and be happy in the CS industry. CS teacher Karime identified how this reality “make[s] the field unwelcoming … [and] extremely unappealing for anyone that doesn’t fit this description.”
The Impact of a Lack of Diversity on Technology
Diversity matters in the CS industry because people vary — so our tech tools and ways of doing computing should too. The sameness in the CS industry, whether real or perceived, shapes which technologies get developed and their impacts on society. The lack of diversity also influences which problems technologies are designed to solve, which communities technologies are developed for, and who sees or wants a future in the CS community. When CS professional communities are homogenous, technological development tends to focus on the needs and concerns of those communities, overlooking the needs, interests, and desires that underrepresented groups have for themselves and their members. Biases associated with the shared identities of computer scientists get embedded into technology, whether by design or inadvertently, adversely impacting communities not represented among creators.
The development of facial recognition technology is an example that illustrates the impact that a lack of diversity has on computing. Computer scientists who developed facial recognition technology often boast about its accuracy, averaging about 90% overall (Najibi, 2020). However, when that data is broken down into different categories based on identity markers, a different story emerges. Facial recognition algorithms are much less accurate at recognizing women and people with darker skin tones. As a result, women of color are recognized even less accurately (Najibi, 2020). The algorithms are most accurate when identifying white male faces — faces most similar to those who created them.
The consequences of these biased algorithms are significant, affecting more than just unlocking your phone (or someone else’s) or getting ahead in airport lines. Facial recognition technology is used by law enforcement to apprehend suspects (Algorithmic Justice League, n.d.). This means that being mistaken for someone else can lead to an unwarranted interaction with police, which could become a permanent part of someone’s criminal record, regardless of whether they’re innocent or not.
Similarly, judges use artificial intelligence (AI)–based recidivism algorithms to determine sentence length for convicted individuals. Recidivism algorithms make inferences based on data from sources like arrest records and demographic information. They are used to predict whether someone charged with a crime may be at “high risk” of committing another crime in the future (Larson et al., 2016; Lee et al., 2019). Researchers have found that these algorithms — and the data they draw on — are racially biased. This bias results in longer sentences for racially minoritized suspects (Angwin et al., 2016). A lack of diversity in those designing technological tools can result in highly consequential and inequitable outcomes for marginalized groups.
The lack of diversity in the tech industry is not the only explanation for these dynamics. They are also influenced by historical and cultural processes that have worked to eliminate diversity and reinforce sameness. For example, some recidivist algorithms may weigh the zip code of where a person lives as part of calculating the probability that they will be a repeat criminal offender. The contemporary racial demographics of zip codes reflect historical redlining policies and current real estate biases that restrict and shape where racially minoritized people live. Many of these realities were established in the United States during the Jim Crow era, after the end of the Civil War, when state and local laws reinforced racial segregation. Scholar Ruha Benjamin names these data points that carry embedded biases as the “outputs of Jim Crow.” She argues how the outputs of Jim Crow become the “inputs of New Jim Code,” creating technologies that continue to perpetuate racist outcomes in the present day (Benjamin, 2019).
While inequitable impacts of technology are complex, a lack of diversity only contributes to these problems. Limited diversity in CS fields means that there are missing and underrepresented perspectives. Centering diversity can bring in perspectives that lead to new ideas, better solutions, and technology that helps everyone. Diversity in CS fields can result in people questioning the technologies that are created, what their purposes are, whom they might help, and why.
At the same time, promoting a diverse workforce within CS fields can only go so far. Many technology companies report diverse hiring practices, but when individuals attempt to raise critical questions or change inequitable company practices, they may be ignored or even fired. In one case, technologist Timnit Gebru was fired from Google because of her work that critiqued how large language models used in AI (including Google’s AI) can spread disinformation (Allyn, 2020; Perrigo, 2022). In another instance, Meta founder Mark Zuckerberg ended certain company practices related to fact checking misinformation and moderating hate speech on products like Facebook, Whatsapp, and Instagram, ignoring the protests from a global community of fact checkers they had hired. The policy change is expected to have adverse impacts especially for LGBTQ people, women, and culturally and racially minoritized groups around the world (International Fact-Checking Network, 2025). Not only must CS industry workers and leaders reflect the diversity of the nation and world, but companies whose products shape the lives of so many must be held accountable to values that reflect the safety, desires, and interests of the diverse collectives who are impacted by them.
Despite these issues, there has been incremental progress that we can celebrate and take inspiration from. Many diverse CS teams have already succeeded in creating more inclusive products, such as voice recognition software that understands speech patterns of people with disabilities, accents, and language varieties (e.g., fluent.ai, n.d.; voiceitt.com, n.d.). Benjamin (2019) provided examples of ways that people have drawn on their unique perspectives and experiences to create tools that resist embedded biases and challenge tech norms. One example is Hyphen-Labs, a team of racially diverse women who work “at the intersection of technology, art, science, and the future” (MIT Open Documentary Lab, n.d.).[4] They developed designs for jewelry and clothing that can record police interactions and prevent facial recognition, counteracting some of the tools that disproportionately harm racially minoritized people. Another development team, Brian Clifton, Sam Lavigne, and Francis Tseng, created a White Collar Crime Risk Zones tool to counteracts the anti-Black technology used in crime tracking (Clifton et al., n.d.).[5] Using machine learning, the tool flags city blocks where financial crimes are likely to occur and provides facial recognition programs to identify likely perpetrators (in this case, generally white and male). Their tool flips the script on algorithms used to track crime and surfaces the biases embedded in those systems.
These examples illustrate how technology can be used to actively contest the inequities it often reproduces. However, making this resistance happen requires the industry and the governments that regulate it to not just promote diversity but to empower marginalized people and perspectives. Making space for diverse backgrounds, perspectives, and experiences in CS fields can generate new imaginings that allow us to reform existing systems and to transform inequities into new possibilities and futures (Benjamin, 2024).
Why Does Diversity Matter in CS Ed?
To have diversity in CS industries, we must support diverse groups of students who can see futures for themselves in CS fields. Many students whose identities have been marginalized and who have been excluded from CS Ed have important ideas and perspectives that could empower them and bring essential change to CS. CS educator Tarek captured this connection:
Diversity in the CS classroom is so much more than just having different faces in the room. It’s about embracing and valuing the unique experiences and perspectives those faces represent. It’s about understanding how things like race, gender, and even where you’re from have shaped the history of computer science and continue to affect who gets to participate and what kinds of technologies are created. When we [recognize that past and embrace diversity], we can create a more inclusive and innovative future for tech. By understanding and using kids’ backgrounds and interests, we can make computer science a field where everyone feels like they belong and can contribute meaningfully.
Lack of Student Diversity in CS Ed
Achieving a vision of full and meaningful participation in CS Ed requires addressing barriers to diversity that exist in CS Ed. The homogeneity or sameness that exists in the CS industry is mirrored in CS Ed. Research has shown that students taking CS courses in their K-12 education is a predictor of choosing a STEM major in college (Lee, 2015). However, students do not all have the same access to CS courses. Marginalized students are less likely to attend schools with CS course offerings (Code.org et al., 2022), and not all students see CS as a place where they belong. Marilyn’s concerns at the beginning of this chapter reflect this reality. Marginalized students often experience CS learning environments as unsupportive or irrelevant (Margolis et al., 2017; Ryoo et al., 2020). Research also shows that even when students are good at STEM-related subjects, they may opt out of those course pathways because of social stigma or prejudice (Eccles et al., 2020). The cost-benefit analysis of their choices and interests leads them away from STEM and CS-related paths (DiSalvo et al., 2014; Eccles et al., 2020). These patterns all contribute to limited diversity in CS Ed.
While these statistics and research point to the challenges we face, we can also acknowledge the incremental progress that has been made. In 2017, when the AP CSP exam was first offered, 26.4% of test takers identified as female, and 47.7% identified as Asian, Black, Indigenous, Latine, or Pacific Islander. In 2023, those percentages had increased to 30.9% and 56%, respectively, illustrating progress in increasing participation in CS for students who have historically been marginalized based on gender and race (Code.org, 2025). In 2016, Chicago Public Schools was the first U.S. school district to make CS a graduation requirement, an example of structural and systemic changes that increase access to CS Ed for all students (Chicago Public Schools, 2020).
Lack of Diversity in CS Ed Curriculum
We might also understand the lack of diversity in CS Ed in terms of the topics covered in CS courses and curriculum. Because CS Ed tends to mirror CS industries, the focus of CS Ed also mirrors priorities of CS industries — programming examples used in textbooks may overemphasize commercial applications over public sector, civic, or recreational types of software development. This approach erases the computational practices embedded in non-Western societies (e.g., Indigenous beadwork, hair braiding patterns).
Mainstream CS curricula tend to center white, male, or English-speaking norms. For example, a typical programming assignment might require students to create a program that asks users to input their first and last names and add them to a list or array. However, budding programmers might not recognize the diversity embedded in names as a cultural practice. They might fail to consider things like accents and scripts beyond the Roman alphabet to write names, a need to include maternal and paternal family names, and cultures where family names precede given names in their designs. Without explicitly exploring this diversity as part of the assignment, students may create exclusionary input options. Similarly, textbooks often overlook teaching novice programmers how to use or program multilingual or accessibility features in computing environments, despite the fact that this skill is critical for developing software for broad adoption. A lack of diversity in curriculum topics impacts the kinds of tools that students use, the kinds of CS tools they create, and their understanding of what CS is, who it is for, and what “counts” as successful computing.
Many educators have worked to change this state of affairs by incorporating computing practices and tools grounded in histories and practices of different communities into CS Ed curricula. One resource is the set of Culturally Situated Design Tools (CSDT) developed by CS educators to connect STEM and computing principles to cultural practices like African fractals, Appalachian quilting algorithm, and Native and Indigenous beadwork.[6] There are also many resources that explore the diversity of the CS field that existed historically and continues to exist today but that often gets erased or excluded from CS curriculum (see Chapter 3 for more on erasure). Jean Ryoo, Jane Margolis, and Charis JB’s 2022 graphic novel Power On! is one resource.[7] This book emphasizes how diverse computer scientists’ identities and perspectives shaped their work and commitments, leading them to contribute to computing in transformative ways. Teachers can also include examples of historical and contemporary CS creatives who come from backgrounds that reflect their students’ identities. Resource 1 in Chapter 1 provides some historical examples to get started. Other contemporary examples that some of our teachers have used to represent their own students include people like the winners of the Ada Lovelace Award,[8] Ayanna Howard,[9] Joshua Miele,[10] Angelica Ross,[11] and Erin Spiceland.[12] Chapter 4 also highlights several activist groups who are using CS to work toward social justice for marginalized groups. These examples offer ways to incorporate reasons for computing into CS curricula that go beyond the commercial purposes that are often prioritized.
CS educator Tarek shared some strategies that he has used to address the lack of diversity in CS curricula:
The world sends messages that tell certain groups they don’t belong in tech. I’ve seen it happen with some girls and students of color in my class. They feel like they don’t fit in because they’ve heard the message that tech is a white, male-dominated field. I remember one super smart girl who was hesitant about CS because she didn’t see many women in the field. It’s heartbreaking to see them hold themselves back.
To fight against those stereotypes, I try to show my students that there are tons of amazing women and people of color who are killing it in tech. I also try to build a classroom culture where everyone feels like their contributions matter. I use inclusive language, I make sure there are diverse faces in examples and stories, and I encourage teamwork over competition. I want my students to feel empowered to own their place in tech.
Through his efforts, Tarek has worked to resist stereotypes of who does (not) belong in CS and to help students see themselves reflected in his CS classroom. Given the importance of diversity for both CS industries and CS Ed, CS educators can work to center diversity as a resource for learning in their classrooms.
How Can CS Educators Center Diversity?
Centering diversity can involve (1) welcoming students who may be excluded from CS spaces; (2) recognizing students’ diversity; and (3) building on and affirming student diversity.
Welcoming Diversity
To welcome students whose identities have been marginalized in CS Ed classrooms, it is important for teachers to investigate why particular groups of students might not be participating in CS learning opportunities and to create welcoming spaces. Marilyn’s dilemma around her Girls Who Code club illustrates the need to create spaces that center cultural practices and values that are not always included in mainstream CS Ed settings. There are several approaches that can help address this need. One approach is to create spaces that prioritize historically marginalized groups. This might look like creating affinity groups where those with an affinity or shared set of values can come together and center their cultural practices, ways of knowing, and experiences. Another way to create welcoming spaces is to center plurality within mainstream spaces using approaches like culturally responsive and sustaining pedagogies. A third approach blends the first two, creating spaces that foster syncretism, or combining different traditions, perspectives, and practices to create something new (see Chapter 14 for more on syncretism in CS Ed).
As an example of what it might look like to welcome diversity in practice, let’s consider Sophie, a fictional teacher of AP CS. Sophie recognized that most of the students in her class were typically white and male. She asked herself why more of her school’s growing population of West African immigrant students weren’t enrolled in the course. Was it a language issue? Were students not satisfying gatekeeping prerequisites? Were competing courses happening at the same time? Were students unaware of the course as an option? Did they feel that they wouldn’t belong or be interested in the course? Many of these reasons could be overlapping and contributing to Sophie’s enrollment patterns. Sophie resolved to stay curious as she worked to understand the issues by talking to the school guidance counselor and students about enrollment.
Recognizing Diversity
Educators can learn to recognize students’ backgrounds and experiences across a range of dimensions and use that understanding to plan and facilitate CS learning activities. Recognizing diversity is harder than it might seem. Even with the best intentions, as we seek to notice variation and difference, we can inadvertently perpetuate assumptions about groups of people, causing harm to students. One way this happens is when we act on incomplete knowledge of how our students differ from ourselves and from each other.
For example, Sophie needed to be careful not to assume that because most of her current students were male and white, they were all the same. Her students had varied motivations for participating in CS and different prior experiences with technology. Sophie couldn’t immediately recognize students who had hidden or undocumented barriers to CS learning. These challenges included things like invisible disabilities, varying language backgrounds, family income, and Internet access at home. Similarly, Sophie did not immediately notice the personal resources or cultural assets her students and their families could contribute to the CS classroom. One of Sophie’s white male students had a reading disability that was exacerbated by the way a particular programming environment displays text on the screen. That same student had a family member with a disability that motivated his participation in CS. As Sophie got to know this student, his goal to develop tools with and for his loved one became a valuable asset for his CS class. Creating diverse and inclusive CS Ed environments requires gathering information about students’ experiences and questioning assumptions about sameness.
Our ability to recognize diversity might be constrained by the categories we use to describe students. Not all differences can be reduced to demographic categories. For example, the identity categories commonly used in U.S. education to label students along racial and ethnic (e.g., Asian American, Black, Latine/Hispanic, Native American or Indigenous) or gender lines (e.g., male, female, non-binary) may be helpful in the aggregate to provide a high-level overview. However, these labels can quickly collapse individual students’ backgrounds, experiences, and interests. We need to be careful not to essentialize, or assume or imply sameness within a group, especially within minoritized and marginalized groups.
Instead of relying on demographic categories to recognize diversity, a teacher like Sophie might seek to understand and build on students’ funds of knowledge, or the bodies of knowledge and experience that students bring with them from their home lives and cultural communities (González et al., 2005). Understanding students’ funds of knowledge requires deeply learning about students’ family and community practices rather than making assumptions about or essentializing students based on demographic labels. For example, one student in Sophie’s school, Dee, shared that their family had funds of knowledge related to hair styling. At home, they were responsible for doing their siblings’ hair, and they spent time learning and observing at the barber shop where their parents worked. Sophie took time to learn more about Dee and their family’s funds of knowledge. She considered the relationship that these caretaking and hairstyling practices had to CS. Sophie also reflected on how everyone in the classroom could learn from the knowledge that Dee brought from their home and family.
Building On and Affirming Diversity
Equipped with knowledge about students and their communities’ differences and strengths, teachers can affirm this diversity through their CS instruction. There are many ways to do this, which will be explored in the chapters that follow (e.g., Chapters 8-17). In this chapter, we’ll focus on Sophie’s attempt to build on Dee’s family’s funds of knowledge in her planning.
A popular resource on the CSDT website has students explore African and African diasporic cornrow braiding patterns in hair and use a block-based coding interface to design their own cornrow patterns.[13] Braiding as a cultural practice inherently requires sophisticated computational thinking and is related to Dee’s home practices and funds of knowledge. Sophie reasoned that these activities might help Dee explore CS in the context of their interests while providing opportunities for others to learn about the practices of groups who are different from them and see computing in a new light.
In the process of planning this activity, Sophie needed to take care not to appropriate or oversimplify cornrow braiding, instead treating the practice with respect and care. She first worked to understand her own relationship to cornrow braiding, considering if and how it was something practiced in her own communities and culture. She also identified where cornrow braiding practices originated and researched who practiced them in the past and who practices them today by learning from (and compensating or reciprocating) local experts, reading, and watching media created by and for cornrow braiders. Sophie also considered how different households have different practices related to braiding. Rather than assume that any of her students who were a part of the African diaspora had braiding as a household practice, Sophie explored how different households have different relationships with cornrow braiding and how and why the practice might have been (or might not have been) handed down over generations. She also considered how these practices came about, what they mean in different contexts, and how they are related to computation. She reflected on how these practices play a role in the everyday lives of students whose families carry this expertise and how they demonstrate, share, and pass along braiding as a relational and caregiving practice.
Sophie brought some of the examples she discovered through her research to the classroom for her students to explore. She also asked Dee and Dee’s family members to share their histories and practices related to haircare and cornrow braiding. As students were given opportunities to get inspired by those examples, they were able to experience mirrors of people who reflected back to them aspects of their own identities or experience windows into practices that let them experience other ways of computing (Bishop, 1990). Windows and mirrors can create a new vision of what CS is, who practices it, and for what purposes, promoting cultural awareness and cultural competence for all students, whether or not they are members of groups who have been marginalized in computing.
As she facilitated discussions about the topic, Sophie also worked to avoid tokenizing students. Tokenizing occurs when a single individual is treated as representative of an entire group, such as asking a student with disabilities to speak for all people with disabilities instead of only from their own experience. Because everyone has different funds of knowledge and lived experiences, no single person can speak for an entire group. Teachers may be more likely to inadvertently tokenize students when they ask learners to share expertise that they assume students have based on perceived identities. Instead, teachers can get to know individual students, understand how those students identify themselves, and learn about their personal backgrounds and experiences.
This meant that Sophie avoided singling Dee out to explain cornrow braiding in general as a broad cultural practice. Instead, all students were invited to share specific hair care practices from their families, and Dee shared one example of cornrow braiding. Reflecting on Sophie’s story, CS teacher Christina shared her insights:
It made me think about how to go beyond simply labeling students based on their race or gender and instead understand their individual stories and how those stories shape their learning. For example, a classroom activity focused on cornrow braiding might not be relevant or engaging for all Black girls. This makes me think about how we need to be really careful about assuming that everyone in a certain group shares the same interests and experiences.
As we work to avoid assumptions of sameness, essentialization, and tokenization, we can ensure that the diversity in our classrooms is a resource that truly benefits all.
Revisiting Marilyn’s Story
Diversity is central to the questions Marilyn raised about her after-school coding program. She recognized that her students were different and that while social labels are one way to name those differences, they don’t always help capture the power of diversity. Marilyn ended up using Girls Who Code as her after-school program and acknowledged its limitations as she worked to better center her students’ diverse backgrounds. Her colleague Rebecca described how she navigated this tension in her own context:
I personally had the same issue when I wanted to join Girls Who Code. The organization name didn’t sound right for my diverse students, so we didn’t do it. Instead, we created our own after-school club to accommodate boys, girls, non-binary, multilingual, and special ed students. We exposed diverse groups of students to various CS activities. Some students gained confidence through the CS club. … Their confidence later boosted their desire to do more and do well in other subject areas. It was also helpful when I took them to a [CS-related] event outside of school. They otherwise wouldn’t have had any chance to be invited to such an event. Students were excited and wanted to learn more about CS.
Marilyn and Rebecca worked to recognize diversity by deliberately lifting it up in their after-school spaces to make all students feel welcome. This approach can help foster inclusive learning environments in diverse CS classrooms and schools. At the same time, as we’ll see with other teachers throughout the book, sometimes promoting diversity is best achieved through creating affinity spaces specifically for historically marginalized groups so that their experiences can be centered. Both approaches can help navigate the tensions that Marilyn raised and promote equitable teaching and learning.
As we hope this chapter has shown, diversity applies to everyone. We can learn to recognize diversity even in groups that may appear to seem the same on the surface. At the same time, because diversity is often intertwined with inequity, we need to be thoughtful about how we cultivate diversity in ways that make space for and center the perspectives and experiences of those who hold marginalized and minoritized identities. Diversity can become a powerful resource for learning in more equitable and transformational ways.
Reflection Questions:
- After reading this chapter, what does diversity mean to you? How would you define it? How would you explain the role that diversity plays in CS Ed to someone else?
- What barriers to diversity have you observed in your own experiences with CS and CS Ed? How might you advocate or work to change some of those barriers in your own setting?
- What kinds of diversity are present in your CS Ed setting? What aspects of diversity do your students bring that might you not have initially recognized? How do you support all of your heterogeneous students and provide them with opportunities to learn?
Takeaways for Practice:
- Consider the diversity that exists in a CS Ed setting that you are in or will be in. Think about diversity that may be readily apparent and diversity that might be harder to recognize. Create a representation (e.g., collage, mindmap, word cloud) that helps you capture the different kinds of diversity that exist in this setting. Consider how you might be able to use these different perspectives as resources for learning.
- Reflect on how the concept of “funds of knowledge” might apply to your CS Ed setting. Consider the funds of knowledge that students already use and how you could learn more about other practices that students have. Explore ways to incorporate these practices into CS learning experiences.
Glossary
References
Algorithmic Justice League. (n.d.). What is facial recognition? https://www.ajl.org/facial-recognition-technology
Allyn, B. (2020, December 17). Ousted Black Google researcher: “They wanted to have my presence, but not me exactly.” NPR. https://www.npr.org/2020/12/17/947719354/ousted-black-google-researcher-they-wanted-to-have-my-presence-but-not-me-exactl
Angwin, J., Larson, J., Mattu, S., & Kirchner, L. (2016, May 23). Machine bias. ProPublica. https://www.propublica.org/article/machine-bias-risk-assessments-in-criminal-sentencing
Benjamin, R. (2019). Race after technology: Abolitionist tools for the new Jim code. Polity.
Benjamin, R. (2024). Imagination: A manifesto. W. W. Norton & Company.
Bishop, R. S. (1990). Windows and mirrors: Children’s books and parallel cultures. In M. Atwell & A. Klein (Eds.), Celebrating literacy: Proceedings of the 14th Annual California State University, San Bernardino Reading Conference (pp. 3-12).
Black, C., Cerdeña, J. P., & Spearman-McCarthy, E. V. (2023). I am not your minority. Lancet Regional Health Americas, 19. https://doi.org/10.1016/j.lana.2023.100464
Chang-Bacon, C. K. (2020). Monolingual language ideologies and the idealized speaker: The “new bilingualism” meets the “old” educational inequities. Teachers College Record, 123(1), 1-19. https://doi.org/10.1177/016146812112300106
Chicago Public Schools. (2020, March 3). Cracking the code: Expanding computer science opportunities for CPS students through an equity lens. https://www.cps.edu/sites/blog/search/2020/march/cracking-the-code/
Clifton, B., Lavigne, S., & Tseng, F. (n.d.). Predicting financial crime: Augmenting the predictive policing arsenal. The New Inquiry [White paper]. https://whitecollar.thenewinquiry.com/assets/whitepaper.pdf
Code.org. (2025). Dig deeper into AP computer science. https://code.org/promote/ap
Code.org, CSTA, & ECEP Alliance (2022). 2022 State of Computer Science Education: Understanding Our National Imperative. https://advocacy.code.org/stateofcs
Collins, P. H. (2019). Intersectionality as critical social theory. Duke University Press. https://doi.org/10.1215/9781478007098
Crenshaw, K. (1991). Mapping the margins: Intersectionality, identity politics, and violence against women of color. Stanford Law Review, 43(6), 1241-1299. https://doi.org/10.2307/1229039
Culturally Situated Design Tools. (n.d.). Culturally situated design tools. National Science Foundation. https://csdt.org
DiSalvo, B., Guzdial, M., Bruckman, A., & McKlin, T. (2014). Saving face while geeking out: Video game testing as a justification for learning computer science. Journal of the Learning Sciences, 23(3), 272-315. https://doi.org/10.1080/10508406.2014.893434
Eccles, J. S., & Wigfield, A. (2020). From expectancy-value theory to situated expectancy-value theory: A developmental, social cognitive, and sociocultural perspective on motivation. Contemporary Educational Psychology, 61, 101859. https://doi.org/10.1016/j.cedpsych.2020.101859
Flores, N., & Rosa, J. (2015). Undoing appropriateness: Raciolinguistic ideologies and language diversity in education. Harvard Educational Review, 85(2), 149-171. https://doi.org/10.17763/0017-8055.85.2.149
fluent.ai. (n.d.) Our mission, our team. https://fluent.ai/about/
González, N., Moll, L. C., & Amanti, C. (2005). Funds of knowledge: Theorizing practices in households, communities, and classrooms. Lawrence Erlbaum Associates.
The International Fact-Checking Network. (2025, January 9). An open letter to Mark Zuckerberg from the world’s fact-checkers, nine years later. Poynter. https://www.poynter.org/ifcn/2025/an-open-letter-to-mark-zuckerberg-from-the-worlds-fact-checkers-nine-years-later/
Ko, A. J. (2024). Critical CS education history. In A. J. Ko, A. Beitlers, B. Wortzman, M. Davidson, A. Oleson, M. Kirdani-Ryan, S. Druga, & J. Everson (Eds.), Critically conscious computing: Methods for secondary education. https://criticallyconsciouscomputing.org/
Ladson-Billings, G. (2021). Culturally relevant pedagogy: Asking a different question. Teachers College Press.
Larson, J., Mattu, S., Kirchner, L., & Angwin, J. (2016, May 23). How we analyzed the COMPAS recidivism algorithm. ProPublica. https://www.propublica.org/article/how-we-analyzed-the-compas-recidivism-algorithm
Lee, A. (2015). Determining the effects of computer science education at the secondary level on STEM major choices in postsecondary institutions in the United States. Computers & Education, 88, 241-255. https://doi.org/10.1016/j.compedu.2015.04.019
Lee, N. T., Resnick, P., & Barton, G. (2019, May 22). Algorithmic bias detection and mitigation: Best practices and policies to reduce consumer harms. Brookings. https://www.brookings.edu/articles/algorithmic-bias-detection-and-mitigation-best-practices-and-policies-to-reduce-consumer-harms/
Margolis, J., Estrella, R., Goode, J., Holme, J. J., & Nao, K. (2017). Stuck in the shallow end, updated edition: Education, race, and computing. MIT Press.
MIT Open Documentary Lab. (n.d.). Hyphen-labs. https://opendoclab.mit.edu/presents/hyphen-labs/
Najibi, A. (2020). Racial discrimination in face recognition technology. Harvard Online: Science Policy and Social Justice, 24. https://web.archive.org/web/20240730143205/https://projects.iq.harvard.edu/sciencepolicy/blog/racial-discrimination-face-recognition-technology
National Center for Education Statistics. (2024). English Learners in Public Schools. In U.S. Department of Education (Ed.), Condition of Education. U.S. Department of Education, Institute of Education Sciences. https://nces.ed.gov/programs/coe/indicator/cgf/english-learners
Paris, D., & Alim, H. S. (2017). Culturally sustaining pedagogies: Teaching and learning for justice in a changing world. Teachers College Press.
Patitsas, E., Craig, M., & Easterbrook, S. (2014). A historical examination of the social factors affecting female participation in computing. Proceedings of the 2014 conference of innovation & technology in computer science education (pp. 111-116). https://doi.org/10.1145/2591708.2591731
Perrigo, B. (2022, January 18). Why Timnit Gebru isn’t waiting for big tech to fix AI’s problems. Time. https://time.com/6132399/timnit-gebru-ai-google/
Ryoo, J. J., Margolis, J., JB, C. (2022). Power on! MIT Press. https://doi.org/10.7551/mitpress/14166.001.0001
Ryoo, J. J., Tanksley, T., Estrada, C., & Margolis, J. (2020). Take space, make space: How students use computer science to disrupt and resist marginalization in schools. Computer Science Education, 30(3), 337-361. https://doi.org/10.1080/08993408.2020.1805284
Shew, A. (2020). Ableism, technoableism, and future AI. IEEE Xplore, 39(1), 40-85. https://doi.org/10.1109/MTS.2020.2967492
Straub, E. O. (2024, March 5). Roundup on research: The myth of “learning styles.” University of Michigan Online Teaching. https://onlineteaching.umich.edu/articles/the-myth-of-learning-styles/
voiceitt.com. (n.d.) Inclusive voice AI. https://www.voiceitt.com/#accessible
Washington Office of Superintendent of Public Instruction. (2023). Funds of knowledge toolkit. https://ospi.k12.wa.us/sites/default/files/2023-10/funds_of_knowledge_toolkit.pdf
Zweben, S., & Bizot, B. (2022). 2021 Taulbee survey: CS enrollment grows at all degree levels, with increased gender diversity. Computing Research Association. https://cra.org/wp-content/uploads/2022/05/2021-Taulbee-Survey.pdf
Resource 1: Recognizing Diversity in CS Classrooms
This resource dives deeper into the story of Brandie, a CS educator who has worked to recognize and center diversity in her classrooms. We provide commentary throughout to highlight how Brandie took up the ideas presented in this chapter. Her story concludes with implications for recognizing diversity in your practice.
Brandie is an elementary CS teacher. Her story illustrates the importance of teachers being aware of their own and their students’ identities as a key aspect of centering diversity as a resource for learning. Brandie’s story also highlights how diversity can disrupt dominant norms.
Brandie began with a reflection on her own identities and what that meant in her CS Ed context:
Thinking about and addressing racial and cultural diversity is not something that I thought was appropriate to address at school in the beginning of my career. … [S]chool was about teaching academics. However … I’ve grown to realize the importance that race and culture play at school.
I have come a long way in realizing the importance of me being a Black teacher in a predominately white school and investigating what that means for me, my students, families, and other staff members.
I am a role model, an example, a non-example, a therapist, an advocate, an enigma.
I am active in roles that seek to center diversity, and I care deeply about creating positive, affirming, and fulfilling experiences for my students, their families, myself, and my colleagues.
Like many educators, as an early career teacher, Brandie was initially hesitant about addressing issues like race and culture at school. As we’ll see in later chapters, in the United States in particular, we are socially conditioned to avoid talking about racial topics. Brandie came to recognize that race and culture shape schooling regardless of whether we explicitly name their role or not. Her awareness demonstrates her growth in becoming an equity-oriented teacher.
Building on that realization, Brandie engaged in careful reflection about how her own identity and her students’ identities shape her work. She recognized that the diversity she brings to the collective of her school influences the many roles she plays in that space. She has chosen to lean into those roles and center diversity as a resource for everyone in her school community.
Brandie elaborated on why and how diversity supports learning in her school context:
My school is predominantly white, upper-class, and academically high performing, so for me, attention to diversity is really important. It’s important for the students who do not fit into those categories to feel seen and valued, because it can be challenging to exist in a space where you may not feel like you belong or where your differences make you feel uncertain, unconfident, or unable to connect enough to feel comfortable enough to be yourself.
Attention to diversity is also important for the students who are white, upper-class, and academically well performing. Having opportunities where they and/or their culture is not centered, and where they are learning about different experiences than their own, helps broaden their understanding of the world [can keep them from perpetuating the status quo], and hopefully increases their open-mindedness, respect for difference, and dedication to equity.
Brandie’s description illustrates several key points from this chapter. Diversity involves bringing in students who may feel excluded from CS spaces and ensuring that those students and their contributions are welcomed and valued. It also includes disrupting patterns of sameness for those who hold privileged identities. Brandie’s commitment to diversity helps students who differ from the majority in her school to feel a sense of belonging. Brandie also recognized how her efforts offer new perspectives and opportunities for learning to her students who are in the majority in her school.
Although Brandie recognized how diversity could benefit different groups of students in her school, she was also aware that not everyone within a group was the same. Brandie explained how she worked to avoid essentializing her students:
It is very important to stay grounded in the fact that there is a broad range of individual experiences within any group, regardless of their similarities. There is undoubtedly diversity within a group that is culturally homogeneous in some way. Girls might want to start a coding group, or we might create a Black student affinity group in my mostly white school. The shared identity marker is the impetus for the creation of the group because of the assumption that there is some experience or interest that they all share.
[Although] everyone in that group is similar [in some way], … the reality [is] that they might be very different. … [G]etting to know students helps with considering what experiences to choose for students and what the goals of those experiences are (e.g., a mirror v. a window or a sliding door).
Brandie acknowledged that a single (or several) shared interests or identity traits might be a reason to create a group to meet students’ needs. However, she also clearly recognized the diversity that continues to exist within any group. She named how getting to know students is an important way to understand the diversity within a group. Brandie’s reference to mirrors, windows, and sliding doors draws on the popular analogy that exploring diversity can allow students to experience mirrors reflecting people who are similar to them, windows that let them learn about other ways of being, or sliding glass doors that allow them to walk into new worlds and possibilities (Bishop, 1990).
Brandie concluded her story with a concrete example of how she incorporated diversity into one CS lesson, highlighting a Black computer scientist, Jerry Lawson. (See Resource 1 in Chapter 1 to learn more about Jerry Lawson.)
In our CS units this past school year, my classes in grades 2-5 were learning about what makes a computer and [how] computers work. I centered CS pioneer Jerry Lawson because his work with creating the first video game cartridge revolutionized how data can be stored in computers.
Some of the students got to experience Jerry Lawson’s Google Doodle, which featured the opportunity to play several mini-games, edit those games, and create your own game. I made sure to name the game developers who created the games in the Doodle, show their pictures, and create a link to each game developer’s website. Not only were all the game developers young and Black, but two of the three developers were female.
I invited students to visit the game developers’ websites to learn more about who they are and how their interests and experiences so clearly live in the games they create. To see each game developer tell their story of how their personality, passions, and interests are central to the game they create is so cool, and I think inspiring for kids.[14]
Brandie centered diversity in her activity by representing individuals whose identities are often marginalized in CS and CS Ed (e.g., Black and Black female game developers). She made this connection explicit for students by showing pictures of the developers, and she also avoided tokenizing or essentializing the people in her unit by inviting students to explore the individual stories of each developer. Given Brandie’s diverse school community, this unit may have served as a mirror for her racially marginalized students and a window for her white students, disrupting stereotypes about who belongs in CS.
Implications for Practice:
- Consider your identity and the different identities in your classroom and school communities. In what ways do they align and differ? What roles might your identity lead you to take on in your context? (Chapters 6 and 7 include specific prompts and support to engage in a deeper reflection of your identity and its role in teaching, similar to the process Brandie describes here.)
- Consider who might feel pushed out or excluded in your classroom and school communities. How can diversity serve as a resource to support these students’ learning?
- Consider who might often have their experiences and cultures centered in your school communities. How can diversity serve as a resource to support these students’ learning?
- Think of a CS lesson you have taught or experienced. How (if at all) did it provide students with mirrors, windows, or sliding glass doors (Bishop, 1990)? How could you revise the lesson to incorporate diversity in ways that make space for these possibilities?
- Marilyn is a composite character based on New York City public school teacher Susan Murray and the collective experiences of the authors, teachers, and collaborators of this guide. ↵
- Girls Who Code is a nonprofit organization that offers after-school clubs to increase the number of girls, women, and non-binary people in computer science. To learn more, visit https://www.girlswhocode.com ↵
- We preserve the terms used by Marilyn. See the On Terminology section of this guide for an explanation on our use of different identity-related terms. ↵
- Learn more about Hyphen-Labs at https://hyphen-labs.com/ ↵
- Learn more about White Collar Crime Risk Zones at https://whitecollar.thenewinquiry.com/ ↵
- Learn more about Culturally Situated Design Tools at https://csdt.org ↵
- Learn more about Power On! at https://www.poweronbook.com ↵
- Learn more about the Ada Lovelace Award at https://awc-hq.org/ada-lovelace-awards.html ↵
- Learn more about Ayanna Howard at https://engineering.osu.edu/about/office-dean/about-dean-ayanna-howard ↵
- Learn more about Joshua Miele at https://www.macfound.org/fellows/class-of-2021/joshua-miele ↵
- Learn more about Angelica Ross at https://time.com/collection/closers/6564908/angelica-ross-tech/ ↵
- Learn more about Erin Spiceland at https://github.blog/developer-skills/career-growth/leader-spotlight-erin-spiceland/ ↵
- See the activity at https://csdt.org/culture/cornrowcurves/index.html ↵
- Visit Jerry Lawson’s Google Doodle at https://doodles.google/doodle/gerald-jerry-lawsons-82nd-birthday/ ↵