Foundational Content

Essential Computer Science Learning Outcomes for All High School Students

Overview

The foundation defines essential computer science learning outcomes for all high school students. Topics emerged through analysis of convening data and review of relevant research. Content is organized into Topic Areas, Pillars, and Dispositions.

  • The Topic Areas, which reflect the content that is essential for all high school graduates, are Algorithms, Programming, Data and Analysis, Computing Systems and Security, and Preparation for the Future.

  • The Pillars, which reflect essential ideas and practices that cut across all of the Topic Areas, are Impacts and Ethics, Inclusive Collaboration, Computational Thinking, and Human-Centered Design.

  • The Dispositions, habits of mind fostered within CS classrooms, are critical thinking, persistence, reflectiveness, resourcefulness, curiosity, creativity, and sense of belonging in CS.
Graphic showing the overview of foundational content: The foundational CS content is organized into Topic Areas, Pillars, and Dispositions. The Topic Areas, which reflect the content that is essential for all high school graduates, are 1) Algorithms, 2), Programming, 3) Data and Analysis, 4) Computing Systems and Security, and 5) Preparation for the Future. The Pillars, which reflect essential ideas and practices that cut across all of the Topic Areas, are 1) Impacts and Ethics, 2) Inclusive Collaboration, 3) Computational Thinking, and 4) Human-Centered Design. While they are not explicitly taught, the goal is to develop a set of specific dispositions in CS. These Dispositions are persistence, reflectiveness, creativity, curiosity, critical thinking, and sense of belonging in CS.

Dispositions

Based on participants’ contributions and other research, we include the Dispositions as part of a foundational high school CS experience. In contrast to knowledge and skills, dispositions are broad-based habits of mind that are correlated (positively or negatively) with learning outcomes.

These Dispositions are interrelated. For example, CS experiences that emphasize creativity have been shown to correlate with an increased sense of belonging in CS (Ryoo & Tsui, 2023). Additionally, five of the seven map to self-regulated learning (persistence, reflectiveness, curiosity, critical thinking, and resourcefulness).

creativity icon

Creativity is “the interaction among aptitude, process, and environment by which an individual or group produces a perceptible product that is both novel and useful as defined within a social context” (Plucker et al., 2004, p. 90). Creativity is important to CS as a discipline (Giza, 2021), and incorporating opportunities for creativity into CS courses improves student learning (Sharmin, 2021).

sense of belonging icon

A sense of belonging, or the “personal involvement (in a social system) to the extent that the student feels that they are an indispensable and integral part of the system” (Anant, 1967, p. 391), is one of the more widely researched dispositions in CS education. Its importance is linked to its relationship to a student’s sense of their own ability in (Veilleux et al., 2013) and interest in persisting in their studies (Hansen et al., 2023). Sense of belonging is an important facet of ensuring equity in CS, since this sense often differs by student demographic group (Krause-Levy et al., 2021).

critical thinking icon

Critical thinking includes “the mental processes, strategies, and representations students use to solve problems, make decisions, and learn new concepts” (Sternberg, 1986, p. 3). A student engaged in critical thinking goes beyond lower-level thinking (such as memorizing and recalling information) to analyze, interpret, and synthesize information (Kennedy et al., 1991). Critical thinking ability is widely recognized as a crucial skill for modern workers (van Laar et al., 2020).

Persistence is the “voluntary continuation of a goal-directed action in spite of obstacles, difficulties, or discouragement” (Peterson & Seligman, 2004, p. 229). Persistence has been identified as important to student success in CS courses. Research teasing out the differences between productive and unproductive forms of persistence is ongoing (Pinto et al., 2021).

Reflectiveness is the process of “turning experience into learning” (Boud et al., 2013) through the student thinking about the results of past actions and allowing that prior knowledge to inform predictions of possible outcomes of future actions. Reflective activities in CS courses have been shown to improve learning outcomes (Zarestky et al., 2022).

Resourcefulness refers to a student’s strategic use of available resources, their ability to regulate their emotions and cognition, solve problems, and delay gratification for greater future rewards (Rosenbaum, 1989). Resourcefulness therefore invokes many components of self-regulated learning (Panadero, 2017; Zimmerman, 2008). As with curiosity, resourcefulness is not widely studied by CS education researchers, but its importance has been shown in other educational research (Dison et al., 2019; Kennett & Keefer, 2006).

Curiosity is the desire for new knowledge, information, experiences, or stimulation to resolve gaps or experience the unknown (Arnone et al., 2011; Berlyne, 1954; Litman, 2005). While the role of student curiosity is understudied in CS education, there is a broad base of educational research affirming the correlation between curiosity and learning outcomes (Stumm et al., 2011).

impacts and ethics iconAs computing becomes ever more pervasive, its social and ethical implications also become more important. Thus, it is crucial that students’ understanding of these implications grows alongside their understanding of more technical concepts to ensure that computing benefits all members of society, especially the most vulnerable. Discussion of Impacts and Ethics includes but is not limited to:

  • Societal impacts of computing
  • Ethical issues in computing
  • Social justice issues
  • Access and equity concerns
  • Safety and privacy

Content related to societal impacts and ethical issues of computing should be integrated into each Topic Area. Developing the capacity to reason about ethical issues related to computing is a key component of CS education (“Justice-Centered Computing,” n.d.; Ko et al., 2024; Tissenbaum & Ottenbreit-Leftwich, 2020), and the development of citizenship skills is a crucial component of the study of computing (Yadav & Heath, 2022). We expect a foundational course (or a similar foundational experience) to devote a substantial amount of time to these issues, and to do so in a way that integrates these ideas with more technical topics so that students understand the interwoven relationships between technical considerations (e.g., how data is represented in a system) and societal and ethical implications. Specifically, students will develop the following skills:

  • Recognize the ethical implications of design decisions
  • Understand the societal impacts of computing technologies (e.g., social networks, facial recognition)
  • Be able to articulate arguments for and against various policies and laws related to computing (e.g., net neutrality, limits on children’s use of social media)
  • Appropriately provide attribution for code that was produced by others or produced by AI

Inclusive collaboration iconAs previously noted, one of the core values of the Reimagining CS Pathways project is equity-centeredness. Key skills within this practice include respecting diverse perspectives and experiences in CS, recognizing and addressing biases, and advocating for the needs of others. These skills overlap with other important skills related to communication and collaboration within CS. The core of inclusive collaboration is, as one participant phrased it, to engage with diverse perspectives with respect and empathy. Specifically, students will develop the following skills:

  • Awareness of and Empathy with Others
    • Accommodate a variety of identities and perspectives, including from those with disabilities and from different cultural backgrounds.
    • Recognize and mitigate personal biases.
    • Provide support services to other people and groups via computing.
    • Support the learning of others.
    • Design and develop with accessibility in mind.
  • Collaboration Skills
    • Recognize different roles on a team, and be able to assume different roles.
    • Seek out and use feedback from others.
    • Provide others with constructive feedback.
    • Advocate for the needs of others.
    • Use appropriate tools, including digital tools, for collaboration.
    • Use a variety of models and methods for collaboration, including pair programming.
    • Be able to communicate about technology in a variety of contexts, including with those with expertise in computing (by using precise, domain-specific vocabulary) and with those with limited technical knowledge (by translating technical concepts into common language).
    • Be able to document products and processes.
    • Apply principles of digital citizenship including data security, responsible communication, information evaluation, and respect for intellectual property.

Computational thinking iconOne of the challenges of this project is the inability to anticipate which computing technologies will be central in the future (e.g., quantum computing, new advances in AI). An emphasis on computational thinking skills – as opposed to more technical implementation skills – can better position students to address whatever technologies become predominant in the future (Tissenbaum & Ottenbreit-Leftwich, 2020).

Computational thinking is most commonly defined as involving thinking processes that structure problems in a way that an information-processing agent (i.e., a computer) can solve them (Shute et al., 2017). Computational thinking includes algorithm development, decomposition, pattern recognition, and abstraction, and it is “a fundamental skill for everyone, not just for computer scientists” (Wing, 2006). The tenets of computational thinking should underpin instruction in each Topic Area and serve as connective tissue across CS learning experiences. Specifically, students will be able to (ISTE & CSTA, 2011):

  • Formulate problems in a way that enables the use of a computer and other tools to help solve them.
  • Decompose problems into smaller, more manageable subproblems.
  • Identify, analyze, and implement possible solutions with the goal of achieving the most efficient and effective combination of steps and resources.
  • Automate solutions through algorithmic thinking (a series of ordered steps).
  • Recognize and describe patterns in problems, data, and programs.
  • Represent data through abstractions such as models and simulations.
  • Generalize and transfer this problem-solving process to a wide variety of problems.

Computational thinking does not stand apart from CS; computational thinking is embedded within CS. Similarly, algorithms cannot stand apart from computational thinking. Given the Topic Areas in the next section, we created a visual representation of our vision of how Computational Thinking, Algorithms, Programming, and CS overlap. While we debated frequently about how these areas should be represented within our findings, we maintain that separating them into Topic Areas and the Pillar of computational thinking made the most sense. However, we recognize that there are various ways to interpret how these concepts fit together. The figure linked below illustrates our vision of the overlap between CS, Computational Thinking, Algorithms, and Programming. We added two other Topic Areas – (1) Data and Analysis and (2) Computing Systems and Security – to show where they may fit as well. The importance of impacts and ethics is also noted.

Human-Centered design iconWith no-code and low-code environments expected to evolve rapidly over the next few years (Bock & Frank, 2021), there will be even more opportunities to infuse design thinking into high school CS learning experiences. Human-centered design will be critical as programming continues to be automated. Coupled with algorithmic thinking and auditing, humans will be needed to build empathy and understanding into the design, feed the design to the AI “programmer,” and audit and refine the results.

Human-Centered Design encompasses aspects of planning that are user-focused. Specifically, students will be able to:

  • Understand principles of effective design for people, including identifying problems and understanding underlying causes. 
  • Empathize with people impacted by the problems, including designing for accessibility and the socio-historical-cultural context.
  • Think of everything (and approach solutions) as a system designed for humans.
  • Generate ideas to solve problems, including considering who is affected by design choices and how they are affected.
  • Prototype, test with users, and iterate solutions.
  • Understand how design decisions shape the end user’s experience.

Pillars

The Pillars are neither Topic Areas nor Dispositions; rather, they are practices, methods, and approaches that are an integral part of each Topic Area. Previous research has shown that incorporating ideas from the Pillars, such as inclusive design, improves CS learning outcomes as well as improves students’ ability to apply the concepts themselves (Garcia et al., 2023).

Pillars are designed to be embedded intentionally into all Topic Areas, with a focus on curricular design and instructional methods, that emphasize the Pillars throughout CS instruction. For example, a lesson on cybersecurity may include human-centered design practices to ensure the protocol is user-friendly and inclusive collaboration to ensure that it works for those with disabilities or non-English speakers, or may include incorporating recognition of the broader impacts of social media into the design of an app.

Topic Areas

We organized content into five Topic Areas: Algorithms, Programming, Data and Analysis, Computing Systems and Security, and Preparation for the Future. We then used the verbs and taxonomy from Bloom’s for Computing (ACM CCECC, 2023) to organize the CS learning outcomes within each Topic Area.

Select a Topic Area to view the related learning outcomes and examples of how the Pillars and Dispositions could be meaningfully integrated.

Vision of the overlap between CS, Computational Thinking, Impacts and Ethics, and Topic Areas.
Reimagining CS Pathways: High School and Beyond