Kenny Graves, an Ethics & Technology Coordinator at the Ethical Culture Fieldston School and Math for All leader, shared two CS activities co-developed with public school computer science teachers. These activities serve a dual purpose:
- They can be used in an adult professional development setting to give adults the space to self-assess their readiness to teach about the impact of computer science with attention to identity, diversity, and social justice; and
- The lessons can be used directly with students in computer science classrooms to begin normalizing the practice of considering the impact of an algorithm before jumping right into the creation of the program.
Activity 1: Adaptation of the classic pseudocode activity (KG)
- In groups, in no more than 10 steps, write a set of pseudocode instructions that leads an individual to the closest restroom. Assume that the individual will only do what you tell him/her/them to do.
- After people first write their instructions, note that most algorithmic instructions will not work for everyone. Have the students themselves come up with who might be unable to use their algorithms. (Asking the question this way helps avoid assumptions about the make-up of your particular group, for example a group of able-bodied, gender conforming individuals, and allows for more inclusive participation. Leaving the question open-ended rather than identifying specific groups increases opportunities for students to brainstorm and enables local language and culture to be included (and potentially addressed) more easily.–Thank you to Kate Fractal for the feedback to improve this portion of the activity.)
- To what extent did your instructions change? How can we learn more about the needs of the groups you identified? For whom did you write your algorithm: yourself or others? How does the perspective from which you write code influence the input and output.
- Algorithms are not just about writing a good set of instructions (CS4All Blueprint). We need to ask, “Good for whom?”