Unpacking “CS for All”: Tools for Creating an Inclusive CS Classroom

By Lily Taylor, Community Advocate

While it is incredibly important to discuss the lack of access to computer science (CS) education, it is also essential to talk about (and celebrate!) all of the men, women, and underrepresented minorities who have succeeded in CS—in ways big and small. Stories of triumph can inspire students and teachers, who feel like outsiders in CS, to keep going (Rework, 2016).

And success stories should reveal the bumps along the way, Leigh Ann DeLyser, Director of Education and Research at CSNYC and former CS teacher, points out. Leigh Ann’s inspiring story, which includes earning a Ph.D. in Computer Science from Carnegie Mellon University, has had plenty of tough moments. “Every single day I was there at the University,” she says, “I thought that they would figure me out and kick me out . . . I had imposter syndrome. I spent hours on the floor of friends’ dorm rooms going, ‘Why doesn’t it like me?’ and struggling with our code just as much as everyone else does.” If students hear Leigh Ann’s story, they might not feel as alone or inadequate when they face their own challenges with CS courses.

As an educator, how do you help all kinds of students live out their own CS success stories? For one, you can share anecdotes like the ones above at the top of class each day! But there’s more to an equitable classroom than that. We interviewed Leigh Ann a few months ago, and we’ve compiled a bunch of her tips, along with ideas from other education resources, on how you can start to make your school or CS classroom more inclusive to all students—today.

Making CS More Equitable

Thoughtful Recruiting

One of the first steps to making computer science more equitable is to recruit all different kinds of students into CS classes. Unfortunately, cultural stereotypes often play too large a role in the recruiting process. Leigh Ann explains that we often assume that the kid wearing the Star Wars shirt is the most likely to thrive in a computer science classroom. But there are lots of other kids who don’t fit that stereotype who likely are just as interested in CS. Leigh Ann says, “No matter what a student is interested in, tech might be something that they can find a home in.”

Art Lopez, a computer science teacher in San Diego, agrees that active, inclusive recruiting is essential. He also believes that schools that have trained their existing teaching staff to teach computer science have an upper hand when it comes to recruiting: “One advantage to using existing personnel is that these teachers already know the community and can work to recruit students who may not view themselves as computer scientists” (Mindshift, 2016).

In addition to teachers, there’s another group that knows the school community well: the students. They can help with recruiting in lots of ways. Ask them to share their CS experience on social media, put up posters around the school, and chat with their friends.

Once you have a classroom full of CS students with different backgrounds, how do you make sure that they all want to stay in that classroom?

Classroom Practices

Although Leigh Ann encourages all students to make their voices heard in CS classes, she emphasizes that, “Our teachers . . . shouldn’t be relying on students to speak up.” Instead, she recommends actively engaging with students on an individual basis. CSTeachingTips.org provides a first step for giving students personal attention—learning their names. As simple as it sounds, this can provide the foundation for meaningful teacher-student relationships that can keep all students coming to class.

Another inclusive engagement tool that Leigh Ann loved as a CS teacher is walking a path in the classroom. She explains: “Rather than responding to raised hands while students are working on projects, choose a path . . . I would literally, during class, do laps of the room . . . Every student had to acknowledge that they were not stuck, that they didn’t need my help, that it was okay that I moved along to the next person.” Leigh Ann also had success with a “counting hands” technique. When students would raise their hands to answer a question, she would count all the hands that went up before calling on anyone. She found that this was a great way of stalling so that all students had a chance to think through the problem and participate in the conversation.

Even with the best intentions, though, sometimes we’re not aware of our bias. The folks at CSTeachingTips.org have a great idea for facing that issue head on. Bring up the effects of bias in class, so that teachers and students can have open conversations about it, rather than pretending bias doesn’t exist. In this dialogue, you can teach students about research that has been done on issues such as stereotype-threat and then discuss ways that everyone in the class can maintain an inclusive environment.

The Role of Mentors

Inside or outside the classroom, you can change students’ lives by serving as a supportive mentor. When Leigh Ann was discussing her path to a successful CS education, mentorship came up immediately. “What really got me is I had very supportive mentors while I was in school and then even after I got out of school who encouraged me.” As an educator, you can offer yourself up as a mentor to students by encouraging them to come talk to you after class or during office hours. You could also bring in older students, who have already taken your CS course, for mentoring sessions with current students.

Research backs up the importance of mentorship, especially for women and underrepresented minorities. The Atlantic reported on a study which found that women engineering students were more successful when they had women mentors. And when Carnegie Mellon scholars explored why their CS program was attracting more women students than average, they found that mentorship was a significant ingredient (Rework, 2016).

“What’s Good for the Goose Is Good for the Gander”

Good CS teaching practice does not change based on the race or gender of your students. It’s about making your classroom culture welcoming, comfortable, and empowering for all students. Leigh Ann puts it simply: “What’s good for the goose is good for the gander.”

She elaborates, saying, “The best things that work for young women, also work for our young men . . . It’s not about looking at the specific categories of the people that are missing, but instead asking ourselves how can we take our instruction, how can we take our classroom practice, and make it better for everybody.” Other researchers agree. CMU scholars argue that if you create CS content specifically for girls, you are just reinforcing the very stereotypes you’re trying to eliminate (Rework, 2016). And researchers at the University of Washington found that “girls were almost three times more likely to be interested . . . [in CS] when the classroom was not stereotypical [in its design and decoration]” (The Conversation, 2015).

When it comes to equity in CS education, there are also systemic issues at play that can’t necessarily be solved in the classroom. But all educators can make a huge difference. Especially when you have students in your class who have never encountered CS before, you have the opportunity to shape their perception of the subject. As Leigh Ann DeLyser says “the teacher’s role is key in computer science.”

Please let us know if you have any other tools or ideas for helping make the CS classroom a more inclusive place. And please share your own or your students’ CS success stories!


Ready to level up your CS teaching? Check out the Computer Science & Game Design course, co-created by the CSTA and Zulama! You’ll learn game design and programming skills, earning a Computer Science & Game Design Certificate.

For additional reading on how to bring inclusive teaching practices to your classroom, or how to bring computer science to your school, check out these resources:


This post is part of a blog series in support of our new professional development opportunity, the Computer Science and Game Design Certificate, co-developed with the Computer Science Teachers Association. For more on the intersection of computer science and professional development, read the previous posts in the series:

Why Game Design Is an Awesome Introduction to Computer Science

By Lily Taylor, Community Advocate

Lynn Vanderzyl was new to teaching high school computer science (CS), and she started out in the logical placeteaching a programming course using Visual Basic, Python, and Java. Unfortunately, the course wasn’t engaging her students: “My classes were too small and they dropped my program.” The following year, the course was redesigned with a focus on game design, with students working together to build video games and learn CS in the process. And it worked!

“They are still learning to code but they don’t realize it.” —Lynn Vanderzyl

Student demand for this course was so high that Lynn offered four gaming classes in the first year, and all of them were full. She’s since added two more advanced game programming courses and loves the projects that her students create each year.

Why is game design an awesome introduction to computer science?

As a part of our Computer Science and Professional Development blog series, we asked CS and game design students, teachers, and professionals that question. A few answers showed up consistently:

  • Games make CS relatable.
  • Games help students understand why they’re coding.
  • Games prepare the next generation to shape society.


“It’s culturally relevant for kids.”

Before students can learn CS, they have to want to learn to CS. And as Lynn discovered, a love of gaming can draw a lot of different students into a computer lab. Schell Games game designer, Sabrina Culyba, sums up why students get so excited to take a CS course when it is based around gaming:

“It’s culturally relevant for kids. They play games. Their peers play games. By leveraging game design and game creation, you give kids a reason for computer science to be meaningful as an everyday tool that helps them create and express themselves.” Sabrina Culyba


Students see the tangible results of their code.

Games are more than just a gateway into CS; they can also serve as long-term learning tools. James Staffen, an undergraduate CS major at Penn State and a former Zulama student, is a big believer in learning CS by designing games. He started programming in high school and knows how challenging the learning process can be.

“When you are coding just to learn coding, you don’t understand what the point of it is. When you are coding to build a game, you can easily see the results of your code, the point of coding, the power of coding.” —James Staffen

Lynn agrees that it is thrilling for students to see the “immediate results” of their code. She adds that this fun experience leads students to want to dig deeper: “Once they get a simple game going they want to add more to it. The only way to add to it is to learn more coding.”



Game design prepares student programmers to shape society.

What are the bigger-picture implications of learning CS through building games? How do we want the next generation of computer scientists and programmers to think, communicate, and design? Sabrina Culyba explains that games help students develop empathy, a key to using computing skills effectively in the real world.

“Good game design requires you to consider your players—what are you trying to help them feel, understand, achieve? This mindset of designing to meet the needs and desires of others is a critical skill for us to cultivate in students as they grow up to build the next technologies that will shape our society.” —Sabrina Culyba

Sabrina’s point raises the question: What other skills, along with empathy, do student programmers need in order to grow into positive, powerful forces in modern society? At Zulama, we believe that collaboration, critical thinking, communication, and creativity (if we were cooler we’d call them the 4Cs) are vital skills for all students to develop. Traditional CS courses don’t always focus on helping students build those skills. But when students work together to make games, they naturally tap into their creativity, talk to each other, and solve problemsall while learning the principles of computer science.


Are You Meta-curious?

By Lily Taylor, Community Advocate

Metacognition, Growth Mindset, Meta-curious

Discovering Metacognition

Elementary school teacher Karin Morrison was teaching the numbers 1 through 10 to the children in her class. This counting exercise was a suitable challenge for some of her students. Other students, were immediately disengaged. One boy, who wanted to be an astronaut, was counting in “light years” rather than counting to 10. Creative, but Karin was unsure about how to focus him on counting to 10.

Her student was thinking about numbers in a way that was meaningful to him rather than addressing the assignment. She decided to try to understand why he was thinking about math in the way that he was. “How can I help him think more about his own thinking?” she asked herself.

“Thinking about one’s own thinking” is also known as “metacognition.” Like many other educators, Karin stumbled upon the concept of metacognition without learning about it formally.
She began to design activities around metacognition. When her students reflected on how they were thinking and why, they engaged with and refined their personal learning process. Later in her career, Karin co-authored a book on the subject —
Making Thinking Visible— with Project Zero’s Ron Ritchhart.

On a Zulama hangout, Nikki Navta and Karin Morrison dove into how to develop metacognitive skills
in the classroom. Their practical strategies for educators who want to “engage students in thinking about their own thinking” are below.

Metacognitive Tools

The Iterative Process

The iterative process consists of a cycle of prototyping, testing, and refining. Students can reflect on which strategies worked, which did not, and why. This cycle emphasizes systems thinking and focuses on how a solution is reached, rather than the solution itself. Zulama students use the iterative process to build and continually improve their game design projects.

Collaborative Project-Based Learning

Consistent collaboration helps students view problems from the perspective of their teammates, embrace new ideas, and learn strategies from one another.

Embracing Failure

When failure is embraced as essential to the learning process, students learn to view failure experiences not as barriers to learning but as ongoing opportunities to understand how they think and learn. They see failure as the beginning of their learning, not an endpoint.

Student-Centric Classrooms

In student-centric classrooms, teachers act as facilitators and mentors who encourage student inquiry and discovery. This classroom paradigm encourages students to develop their own strategies for learning and thinking.

Metacognition Meets Growth Mindset

In implementing these tools, it is helpful to be aware of the intersection between metacognition and the growth mindset. A growth mindset is an understanding that, with effort, one can always grow and improve. Metacognition is the ability to reflect on one’s own learning process and strategies.

When a growth-minded teacher gives encouraging feedback, they remind students that hard work and grit lead to growth and improvement. For that feedback to be helpful, students need to understand what kind of “hard work,” or learning strategies, are most effective for them. To discover personal learning strategies, students must be able to reflect on the strategies that have (and haven’t) worked for them in the past. They must be able to think about their own thinking.


The first step to effectively developing a growth mindset and metacognitive skills is to be “meta-curious” — a term that Nikki coined during the hangout. Being meta-curious could mean that you are curious about metacognition, or it could mean that you are curious about your own curiosity. If you fit into either category, try out some of the tools listed above, keep reading about metacognition, subscribe to the Education Innovation podcast on iTunes, and get in touch with us on Twitter @ZulamaLearn.

Watch our “Understanding Metacognition” Hangout here or listen on iTunes.

Students Design Out of this World Games at South Fayette’s Game Jam

What is a Game Jam?

At a Game Jam, design teams come together to build original games in a limited time frame. It is a fantastic opportunity for students to collaborate, engage in creative problem solving, and deepen critical thinking skills.


South Fayette Game Jam:

Zulama teachers Chelsea McIntyre and Jeannie Scott hosted an outer space-themed Game Jam at South Fayette School District in PA. 16 teams participated and over the course of about three hours, 16 new digital or board games had been built! Thank you to Sabrina Culyba at Schell Games for giving an excellent keynote speech, to Hans Westman at Westman Design Group and Lily Taylor at Zulama for serving as judges, and to the Infosys Foundation, whose contribution gave South Fayette the ability to extend outreach in maker education to neighboring districts.



Community-Based Learning

Through Real World Projects, the Zulama capstone internship course, students work as a design team to meet client expectations when designing a game for business, a nonprofit, or their school district. Take a look at how valued an internship experience can be for the community, the school, but most of all for the student.