Students will demonstrate using binary values to represent text.
Students will investigate the history and limitations of the ASCII system.
Students will research and explain examples of implicit bias in technology.
Students will create a list of culturally authentic practices/guidelines for developers.
DAT-1.A.6: Bits are grouped to represent abstractions. These abstractions include, but are not limited to, numbers, characters, and color.
DAT-1.A.7: The same sequence of bits may represent different types of data in different contexts.
DAT-2.C.5 Problems of bias are often created by the type or source of data being collected. Bias is not eliminated by simply collecting more data.
Bits can be grouped together to represent different types of data. In Section 4.5, we focused on using bits to represent numbers. In this section, we focus on using bits to represent text. Students will use binary bits to represent words. They will encode and decode using the ASCII system.
After student learn about and practice with ASCII, there will be a class discussion on the limitations of the ASCII system which will lead into an exploration of implicit bias in technology. The ASCII system was limited in the characters that it could represent. It did not cover other languages or culturally symbols. Therefore, a larger, more representative system was developed, Unicode. Students will be asked to define implicit bias and will research other examples of implicit bias in technology. Finally, the class will develop a list of Culturally Authentic Protocols that they will follow in their software development process.
Activity 7.7.1 (budget 55 minutes)
Warm Up Challenge: Write the name of your school & mascot on the board or display for all students to see. Example: Chattahoochee Cougars
Students can work with a partner but must determine the binary equivalent of the school name and mascot. Example: How would I write “Chattahoochee Cougars” in binary.
Allow students time to figure this out on their own. If they need a hint, tell them to look up the term “ASCII chart”. Basic ASCII chart with characters and decimal value.
Students should discover that every character on the keyboard has an associated ASCII value (decimal). They can find the value of each character in the school name and mascot and then convert each one to it’s associated binary value. They must include the space.
If students need more instruction, they can look at Chapter 5.4 of the CS Field Guide.
Exploration question: Is the ASCII system sufficient for all computer users worldwide? Discuss cultural context of ASCII. What changes were made to make this system accessible to more cultures and languages? Discuss Unicode system.
A key concept here is that the same sequence of bits may represent different types of data in different contexts.
This can lead to a discussion on bias in programming. What other examples of bias in algorithms and programs can students find? How can we prevent future instances of bias in technology? There are many resources for researching bias in technology. Here are a few.
As a class, develop a set of culturally authentic protocols for developers. These should be practices that they can follow right now.
In order to develop technology for ALL users, what guidelines or practices should we follow?
Where does this fit in the software development life cycle?
Emphasize to students that they are not expected to memorize the ASCII chart. They will be tested on this concept but they will always be given a chart that shows the character and an associated value. Typically test questions involve reading the chart and converting a character value to binary or hexadecimal. Or, the reverse...given a binary or hex number, find the associated character.
Ticket out the door: Have students write their first name in binary. Give them to you for use as a warm up for the next class period.