A photograph of Janet Gordon setting up our task.
Faciliator Janet Gordon frames our work.

What counts as computer science in K-12 education?

Amy J. Ko
Bits and Behavior

--

In the 2018 legislative session, the Washington state legislature passed a law that says the following:

Beginning no later than the 2022–23 school year, each school district that operates a high school must, at a minimum, provide an opportunity to access an elective computer science course that is available to all high school students.

The was a lot of work behind these words. Hundreds helped advocate for language like, including me, and the state senators and representatives who helped champion the bill worked hard to gather support for it. Advocates like me didn’t have final control over the language in the bill. It passed with bipartisan support, and became state law.

Of course, the language above is incredibly vague in some important ways. What’s an “opportunity to access”? Is that just the ability to request the elective when a student submits their course preferences? Or is an opportunity to access something more substantial, like actually being registered for the course? Or is access something even more, like a guarantee that once in the course, the student has everything they need to learn, including students with disabilities? The legislature didn’t really say.

Equally ambiguous is what counts as a “computer science course.” Computer scientists have long debated this question. I spent some time trying to define computer science myself, using simpler and more human-centered language than most prior computer science definitions. But the exercise of coming up with a definition suitable for K-12 education is quite different from coming up with a definition that’s intellectually sound. If the definition is too strict (e.g., CS involves learning high level programming languages, classic algorithms and data structures, and building non-trivial software systems), it risks making it impossible for teachers to have enough expertise to teach. If the definition is too loose (e.g., CS is anything involving computers), it risks not teaching any of the powerful ideas in CS. In fact, the status quo in Washington state is that many of the courses classified as computer science courses include things like keyboarding, Microsoft Office, and Adobe Illustrator.

To my surprise, the legislature doesn’t really have to clarify these things. Instead, when state governments (or our U.S. federal government) pass laws, it’s ultimately up to the judicial branch of government to interpret the law to decide ambiguous cases, and the executive branch of the government to interpret the law to enforce it.

So when this law passed, interpretation and enforcement landed in the lap of Washington’s Office of the Superintendent of Public Instruction (OSPI), the body charged with interpreting and enforcing state law about public education. And because it was related to computer science, it specifically became the responsibility of my colleague Shannon Thissen, OSPI’s CS Program Supervisor, to figure out what the law means.

How does one interpret state law? It turns out that there’s no set process. Shannon followed OSPI’s existing norms, and hired an independent consultant (Janet Gordon, shown in the image at the top), to organize a process that would engage diverse stakeholders from the state. The 16 invited stakeholders included people like me, who represent higher education and CS education research, CTE Directors, who oversee career and technical education in districts, CS teachers, school principals, and district superintendents. Janet’s approach was to use this group to elicit a range of questions, concerns, and ideas about varying definitions of computer science, and synthesize that feedback into some form of definition for feedback with the group, and feedback with other stakeholders.

The Seminar II building at Evergreen State, a grey concrete brutalist structure.
The brutalist structure that housed our cozy room.

To get feedback, Janet and Shannon planned a 1 day workshop. We met at Evergreen State College in a cozy room, and did all kinds of things: we read other state’s plans for CS education, we read the K-12 CS standards for different grade bands, we discussed the particulars of how teachers and registrars come to classify specific courses. We talked at length about the course code database schema and how it is often inconsistently used throughout our local control state. We had a conference call with state leaders in Georgia, Nevada, and Indiana, getting advice from them about how their definitions of CS have had unintended consequences. We discussed the different ways we might present guidance about what counts as CS, and the challenge of trying to teach what CS is to registrars who may have no knowledge about CS. Throughout, the elephant in the room was how our definition would ultimately be enforced, and how that might shape the classifications that registrars and teachers might choose.

By the end of the meeting, I had a much deeper appreciation for the complexity of implementing policy, and the complexity of public education. Simple language in a law can have infinitely nuanced implications. I’m eager to see how Janet and her consulting group try to wrangle this complexity into something simple enough to shape the CS education around our state. And And when our community’s passionate work leads to the inevitable unintended consequences, I’m eager to try again, nudging state law, one word at a time, into something that ultimately brings CS to all students in our state.

--

--

Amy J. Ko
Bits and Behavior

Professor, University of Washington iSchool (she/her). Code, learning, design, justice. Trans, queer, parent, and lover of learning.