Essential Computer Science Learning Outcomes for All High School Students
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.
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 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).
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 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).
As 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:
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:
As 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:
One 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):
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.
With 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:
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.
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.
This project is supported by the National Science Foundation (NSF) under Grant No. 2311746. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the NSF.