#CSforGood in your class

Video thumbnail

We rely on technology to keep us connected, but we’ve also seen how biased algorithms can divide us on the basis of race or gender. We rely on our technology to keep us informed, but we’ve also seen how easy it is to spread misinformation. We rely on our technology to stay productive, but we’ve left behind those who don’t have access to the internet.

How CS and technology are used and applied in the real world is a crucial part of learning computer science. We can help students understand some of the challenges that people around the world face and inspire them to think deeply about the role computer science can play in creating a more equitable and sustainable world.

Discussing #CSforGood with your students

Here are some themes and questions to spark discussion in your classroom about the role of computer science in creating positive social change. Download this discussion guide as a PDF.

We learn CS to detect problems

Building a society we want to live in begins with understanding the problems we need to address. We can use technology to detect and even predict problems.

Have students read this story about how smartphones are being used to detect earthquakes and then work in pairs or groups to answer the questions below. Then discuss as a class.

Questions for discussion:

  • What technology does the article discuss?
  • What problem is Google trying to solve? Why is this important?
  • What are other ways that computer science or technology can help detect problems?

We learn CS to find creative solutions

Learning computer science gives us a foundation to find solutions. It is our creativity then that enables us in every industry and aspect of life to design solutions built upon that foundation.

Have students read this story about how urban planners are using AI in Minecraft to design better cities, and then work in pairs or groups to answer the questions below. Then discuss as a class.

Questions for discussion:

  • What technology does the article discuss?
  • What challenge or challenges are participants trying to address?
  • Think of the technology that you use on a daily basis. What does it help you do? What problems or challenges does it help you solve?
  • Can you think of a time you used technology in a way it wasn’t necessarily intended, in order to solve a problem?

We learn CS to connect with each other

From video chats and classes to apps that allow us to sing together remotely, people have built technical innovations that have kept us connected with some semblance of community through a global pandemic. And, we will continue to find ways to humanize technology to unite us.

Have students watch this video (link to original video at CBS News) of students from Chino Valley Unified School District singing an a capella version of “Over the Rainbow” via video conference after covid-19 canceled their annual Choral Festival. Then have them work in pairs or groups to answer the questions below.

Questions for discussion:

  • Name as many of the technologies as you can that enabled these students to sing together despite stay-at-home orders due to covid.
  • Do you use any of these technologies? How frequently--weekly? daily?
  • Have you used technology lately to make art? Record music? Write poetry? Play games with friends? Talk to family members? If you did not have access to these technologies, what would you do?
  • Should everyone have access to these technologies? Why or why not?

We learn CS to ensure equity and inclusion

The people creating technology should look like the people using it. Everyone must have the opportunity to learn computer science to have a part in building a future where all of our voices are heard.

Have students read this story about a new tool that helps root out potential biases in image sets that are used to train artificial intelligence (AI), and then work in pairs or groups to answer the questions below. Then discuss as a class.

Questions for discussion:

  • What does this tool do and what problem is it trying to solve?
  • What do you think ‘open-source’ means? Why would the researchers make their tool open-source?
  • What are some of the examples mentioned in the article of biases in image sets? Can you think of any others?
  • Why is it important to be able to identify these biases? How does this relate to equity and inclusion?

#CSforgood tutorials & lesson plans

If you're looking for an engaging way to introduce your students to the concept of #CSforGood, there are lots of tutorials and activities to choose from!


AI for Oceans

Computer science is about so much more than coding! Learn about AI, machine learning, training data, and bias, while exploring ethical issues and how AI can be used to address world problems.

From Code.org. For grades 3 and up.

A Minecraft Tale of Two Villages

Use the power of code to bring two villages together. Players will experience empathy and compassion for their neighbors, learn cooperation and inclusion, and embrace the diversity that makes us all uniquely special.

From Minecraft Education. For grades 2 and up.

CS First Unplugged

No computer or internet? No problem. Try the CS First Unplugged activities to explore how computer science can solve problems like helping people stay connected while apart. "Plugged in" Scratch activities are available too!

From Google. For grades 2 through 8.

More #CSforGood activities and lesson plans:

SciGirls: Code Quest (SciGirls/Twin Cities PBS): In this online coding adventure, take Subby the submarine through underwater challenges, using code to find various items and collect scientific data on the ocean floor. A self-guided tutorial for beginners in grades 2-8.

Climate Clock (Vidcode): In this Hour of Code activity, students will be guided through the construction of their own climate clock. They will engage with objects, properties, variables, functions, and loops, and customize text to convey their message for the world and their hopes for the future. A self-guided tutorial for beginners in grades 6 and up.

Code a Happy Place Meditation App (CodeSpeak Labs): It’s been a stressful year for students, but practicing mindfulness can be a challenge. Learn to program a meditation app that transports you to your "happy place." For beginners in grades 2 through 8. Great as a teacher-guided tutorial.

Robot Feelings: The Kind Playground (iRobot): Our robot is learning how to make kind choices when playing with friends. In this game, help Root practice by making four kind decisions in a row. If Root makes a bad choice, it has to start all the way at the beginning again! Let's play together! For beginners in kindergarten through grade 5. Root robot is optional.

Saving Sea Turtles (micro:bit): Create a prototype of a low-power, red LED beach light that can be used for lighting on beach paths which is also safe for sea turtles. For beginners in grades 6-8. Great for learning at home.

See the full list of Hour of Code activities and lesson plans, including many more #CSforGood-themed tutorials, at hourofcode.com/learn!

Go further: How people are using #CSforgood in the real world

Every day, organizations and individuals are finding new ways to use computer science to help solve the world's challenges. Here are some real-world examples to take a look at with your classroom.

Detecting problems

Finding creative solutions

Connecting to each other

Ensuring equity and inclusion

Reach out to us!

We want to hear about how your students are engaging with #CSforGood! Use the hashtag #CSforGood or send your #CSforGood stories to teacher@code.org.