Early in the school year, a few sections of eighth graders found themselves in computer science class—without computers. (They wouldn’t receive their school-issued laptops until the following week.)
As a result, they had a “bonus” class to explore the nature of artificial intelligence through various human-versus-machine simulations. In a demonstration of the Turing test—the widely accepted benchmark for artificial intelligence—the class selected four questions they thought were most likely to distinguish between a human’s responses and a machine’s (One such question: “What do you think of Harry Potter?”). Two volunteers then left the classroom to write their answers: Harrison Q. responding as himself, Nikhil as a computer. The rest of the class then guessed which answers were which.
Distinguishing between humans and machines proved a tough task. By a slim margin, Nikhil passed the Turing test—a feat that would have made history, had he been a computer instead of a Nueva student.
“This activity really made me think more about how people aren't so aware and precise about whether a response is computer generated,” reflected Harrison. “This makes me feel a little amazed and a little scared at the same time.”
This lesson illustrated the progression of the middle school computer science program—from basic coding to advanced conversations about the uses and power of computers.
From fourth grade through eighth grade, every student takes classes in the Hillsborough campus I-Lab, where they practice hands-on prototyping, use tools and machinery, and learn coding and computer science—all within the framework of design thinking.
“Our guiding principle,” said I-Lab Director Angi Chau, “is that the core computer science curriculum is meant to be accessible to everybody, whether or not they have done a lot of coding before.”
It’s not uncommon for some students to feel that computer science is for children of programmers, or who have done a lot of outside enrichment at summer camps or after-school programs. Angi called that a “misconception.”
For both experienced and novice programmers, the Hillsborough computer science program has several goals.
“We show students that computer science can be really fun and creative,” Angi said. “We show them what's possible in terms of coding. And we show them they can do it. It’s about empowering them.”
“Students can still click and drag, or switch to what I call ‘typey typey’—writing code directly,” Angi said.
In sixth grade, students write code in P5.js, a programming environment often used to create art. Students learn animations, games, and interactive art pieces that open the creative possibility of coding.
“For students, it's really engaging to [write a line of code and] see something visual appear on their screens. Maybe it’s moving, or it’s interactive.”
She continued: “Our computer science program offers something a little different [from the standard approach], by design. P5.js has a diversity statement that says, ‘Everyone's a coder, we're all beginners, and we welcome everybody into this space.’”
Nueva’s middle school computer science teachers emphasize this message of inclusivity.
“We say, ‘No one [who uses a hammer] identifies as a hammerer,’” Angi added. “Coding is like that. We teach students that you can do coding, but you don't have to be a coder to do coding.”
While sixth and seventh graders focus on open-ended, creative projects that help them learn how to code, eighth graders explore ways code can be used.
Last year, Angi’s team partnered with science and humanities teachers to create a data science project on food systems. Each student researched a kind of food—its ecology, its chemistry, and its geography. Using publicly available data sets from the US Department of Agriculture and the United Nations, students synthesized the data to determine what was most interesting to communicate, and then created and designed an interactive visualization.
The eighth grade’s focus on data science also presents opportunities for students to think about artificial intelligence and machine learning, which rely on massive collections of data.
Recently, she assigned the students to pick out five food items from their kitchens at home and record data from the nutrition facts. Before they start to code, they will learn how to clean the data, how to graph it, and how to use the graphs to develop hypotheses. Then they will test their hypotheses using the entire grade’s data. The underlying goal is for the students to use data to help them make sense of things.
This focus creates opportunities for students to think about the potential ramifications of data collection.
“I’ll say something like, ‘A-ha! Now I know a lot about the food habits of the eighth grade class,’” Angi said. “And they're like, ‘No, no, no, that's not fair. You told us to pick five items from our house—you didn't say to pick five items that we eat!’ So I’m like, ‘Interesting. And when Facebook collects data about you and tries to make assumptions about you, what do you think about that?”
The food-data project illustrates how many opportunities students have in the computer science program to extend their learning.
“We design our curriculum so that there are plenty of spaces for those students to push beyond,” said Angi.
By the time students finish middle school, they have meaningful coding skills and enough exposure to programming’s diverse applications to pique their interest in further study.
“We teach students to see computer science as a tool to do whatever it is you want to do.”