A Vision for K–12 Computer Science

The full version of this chapter can be found in the complete K–12 Computer Science Framework.


The K–12 Computer Science Framework represents a vision in which all students engage in the concepts and practices of computer science. Beginning in the earliest grades and continuing through 12th grade, students will develop a foundation of computer science knowledge and learn new approaches to problem solving that harness the power of computational thinking to become both users and creators of computing technology. By applying computer science as a tool for learning and expression in a variety of disciplines and interests, students will actively participate in a world that is increasingly influenced by technology.

The K–12 Computer Science Framework envisions a future in which students

  • critically engage in public discussion on computer science topics;
  • develop as learners, users, and creators of computer science knowledge and artifacts;
  • better understand the role of computing in the world around them; and
  • learn, perform, and express themselves in other subjects and interests.

Imagining K–12 Computer Science

Computer science’s ways of thinking, problem solving, and creating have become invaluable to all parts of life and are important beyond ensuring that we have enough skilled technology workers. The framework’s vision for computer science education is best understood by imagining one of the paths that Maria (a student) could take during her K–12 computer science experience:

good-dsc00653In elementary school, Maria learns how to instruct computers by sequencing actions like puzzle pieces to create computer algorithms that draw beautiful designs. From a young age, she understands that computing is a creative experience and a tool for personal expression. In middle school, Maria grows more sophisticated in her use of computing concepts and understanding of how computing works. She uses the computer, as well as computational ideas and processes, to enhance learning experiences in other disciplines. Computing serves as a medium for representing and solving problems. In high school, Maria sees opportunities within her community and society for applying computing in novel ways. The concepts and practices of computer science have empowered her to create authentic change on a small and large scale and across a wide variety of interests.

The K–12 Computer Science Framework is dedicated to making this vision of computer science education accessible to all.

Scope of the Framework and Intended Audience

The K–12 Computer Science Framework is a high-level guide for states, districts, and organizations implementing computer science education. Rather than an exhaustive list of computer science topics, the framework represents the essential ideas in computer science for all students. The framework is not a set of standards; rather, it provides an organizing structure and guidance for states and school districts to create their own standards. The framework also informs curriculum and professional development.

The framework is designed for multiple audiences such as

  • state/district policymakers and administrators;
  • standards and curriculum developers;
  • current and new computer science teachers, including teachers from other subject areas; and
  • organizations (e.g., nonprofits, industry partners, and informal education).

Principles Guiding the Framework

Broaden participation in computer science
The framework is designed for all students, regardless of their age, race, gender, disability, or socioeconomic status. The structure and content of the framework reflect the need for diversity in computing and attention to issues of equity, including accessibility.

Focus on the essential
The framework describes a foundational literacy in computer science, rather than an exhaustive list of all computer science topics that can be learned within a K–12 pathway. Additionally, the framework uses jargon-free, plain language that is accessible to instructors and the general public.

Do not reinvent the wheel
The framework is based on a history of professional research and practice in computer science education, that includes work from the CSTA, ISTE, AP CS Principles curriculum framework, the ACM for curriculum guidelines for undergraduate computer science programs, including frameworks from other countries.

Inform with current research and guide future research
The framework reflects current research in computer science education, including learning progressions, trajectories, and computational thinking. Remaining questions have guided a research agenda that will inform future revisions to the framework.

Align to nationally recognized frameworks
Because the K–12 Computer Science Framework will exist alongside those from other subjects, it is intentionally structured in a similar way as other frameworks, such as the Framework for K–12 Science Education. The use of a lens of concepts and practices to view and describe K–12 computer science provides greater coherence across subject areas.

Inspire implementation
Whether a state or district is already in the process of implementing computer science for all students, or has just begun, the K–12 Computer Science Framework provides a coherent vision for inspiring further efforts. Policy and implementation must go hand in hand to provide high-quality computer science opportunities for all students.