When I was an undergraduate MIT computer science major—long ago—a student from a university up the street once said to me, "Don’t think you are so smart; I’m going to manage you and I’ll get all the credit." The sting of the remark is long gone. Yet, there is something here to ponder as we think about equity goals for computer science education.
A conventional equity focus is on building a pipeline of diverse students for a future as computer scientists. One strategy for doing so starts in the early years with teaching students about "Computational Thinking" (CT), which is often described learning the thought processes of a computer scientist without necessarily learning how to write code. This can sound like "CS-minus." When I talk to school leaders, they remind me that students who have faced equity barriers don't always warm up to getting less.
I wonder if there's a "CS-plus" that makes CS more attractive and approachable among a broad diversity of students and their teachers. What if we anchored CS-plus in what makes equity-oriented K-12 schools tick -- excellence in project-based teamwork?
The Future of Work
In the future, all highly paid work will involve teams of people working in partnership with distributed computing processes to create new value. To be prepared for the future of work, students need to understand how processes can be distributed across people and machines—and how to do so effectively, efficiently, and safely.
As a simple analogy, I think of my wife and I preparing dinner with our Amazon Alexa and a smart pressure cooker. The work of making dinner is distributed across us as people and the smart machines. It’s a good idea for that pressure cooker to monitor time—I’m bad at that. It’s a bad idea, though, for that pressure cooker to automatically decide how much liquid to put into the pot—that’s a good thing for a human chef to consider, perhaps by asking Alexa for some sample recipes, which we can judge based on our trust of the sources.
In the future, success will depend on artful distribution of effort across smart people and smart devices (and their underlying computational processes). And here, it is possible that the snide student from my undergraduate years got his comeuppance, because knowing about "management" in the old way is not really enough to become successful in the future world of work. Case studies abound of powerful, successful managers who failed to understand computation—and thus could not generate value with the computers and computer scientists around them. Thus its not only future computer scientists who can benefit from learning about hybrid processes that include both machines and people. Everyone needs to know it.
Defining Computational Teamwork
To solve tomorrow’s problems, future work teams will need a well-established language of how to solve challenging problems with a mix of human and AI agents. To get there, they need skills that allow them to make, monitor, and improve plans for how to engage people and machines together. This really isn’t what one learns in a pure computer science course. But, it can be learned in school when project-based teamwork in part of the pedagogy and computers are readily available to support learning in teams.
That leads to an issue with current definitions of computational thinking: They tend to rely on the idea of taking the thought processes that one would apply to a computer and applying those to non-coding settings. I’ve yet to see a computational thinking definition that starts from the premise of learning how problem-solving processes are distributed across people and machines. This leads me to propose a new Definition of CT as Computational Teamwork.
CT is the art of designing processes that enable hybrid teams of people and machines to work effectively, efficiently, and ethically together.
In this definition, computational thinking is not "accessible" computer science. This definition focuses on hybridized teamwork across people and machines. It does not need to drop any of the useful definitional work on computational thinking processes—decomposition, modeling, algorithms, simulation, data processing. These processes matter as we consider how to systematically teach students to be leaders in a future hybrid workplace. It’s just that the object of these processes isn’t designing something for one processor, but rather for hybrid teams of people and processors.
In essence, I'm proposing this change to K-12 Computer Science Framework (strikeout and italics are mine): Computational thinking refers to the thought processes involved in expressing solutions as computational steps or algorithms that can be carried out
by a computer, effectively, efficiently and ethically by hybrid teams of people and machines.
Computational teamwork goes to school
I have great hope that schools can do this, and do it equitably. Before the recent school closures, I have visited many innovative schools that serve diverse populations and have made progress on how to prepare students to be great team leaders and team members who resourcefully solve complex problems. Teamwork is commonplace in today's innovative schools and students of all backgrounds are good at it. I also routinely see teams of students in schools with 1:1 laptops and tablets who have an intuitive sense of when and how to incorporate a computer into their teamwork, as one component of their process. From here, I think it is just a small step to deliberately reflect and teach students about how they can artfully distribute work across people and machines. What are humans and machines each good at? What are the interfaces between human and machine processes? What kinds of protections are necessary? How can students learn to intentionally design algorithmic processes for effective, efficiency and safe execution by hybrid teams?
I believe that redefining CT within the context of hybrid teamwork will make it more engaging and approachable to teachers. Few teachers feel comfortable enough with computer science to teach it and the sense of "watered down computer science" doesn’t make a teacher feel any more empowered. And yet, when I visit schools, I see teachers of all subjects coaching their students in hybrid teamwork; using technology as a resource within teamwork and projects is already happening everywhere in schools. I believe teachers could get behind a movement to get serious and specific about how to help students reflect on how they engage in this work and how they can do it better in the future.
Conclusion: Towards a new CT
I’m calling to refocus a definition of computational thinking on a future world of computational teamwork in which people and machines are both contributors. I want to see efforts at equity in not just who is prepared for an AP Computer Science course and eventual computer science degree, but also who can contribute to society more broadly by organizing and participating in computational teamwork -- this explictly includes people who will be change agents, managers, innovators, and also their computer science team-mates. To engage diverse school populations in learning about computational processes, I want to anchor the definition of CT in a world of work that diverse students and teachers thrive in today and that is meaningful for their futures.
Jeremy Roschelle is Executive Director of Learning Sciences Research at Digital Promise and a Fellow of the International Society of the Learning Sciences.