skip to main content
US FlagAn official website of the United States government
dot gov icon
Official websites use .gov
A .gov website belongs to an official government organization in the United States.
https lock icon
Secure .gov websites use HTTPS
A lock ( lock ) or https:// means you've safely connected to the .gov website. Share sensitive information only on official, secure websites.


Title: Code-first learning environments for science education: a design experiment on kinetic molecular theory
Code-first learning entails the use of computer code to learn a concept, and creating computational models is one such effective method for learning about scientific phenomena. Many code-first learning approaches employ the visual block-based programming paradigm in order to be accessible to school children with no prior programming experience, providing them with high-level domain-specific code-blocks that encapsulate the underlying complex programming logic. However, even with the aid of visual clues and the benefit of simpler primitives like “forward” and “repeat,” many phenomena studied in classrooms such as the behavior of gas particles in Kinetic Molecular Theory (KMT) are challenging to describe in code. We hypothesized that code blocks designed from a phenomenological perspective to model the behavior of familiar objects and events would both promote students’ authoring of computational models and their ability to encode and test their beliefs within their models. We created these phenomenological blocks within a code-first gas particle sandbox and integrated it into a KMT lesson plan.Two high school teachers taught this curriculum to 121 students, from which we gathered and analyzed video footage from lesson activities and student focus groups. We found that the phenomenological blocks gave students the ability to start programming right away and to express their intuitive understanding of KMT through computational models. This exploratory study demonstrates the potential for phenomenological programming to broaden the application and accessibility of code-first computational modeling for learning scientific phenomena.  more » « less
Award ID(s):
1640201
PAR ID:
10203594
Author(s) / Creator(s):
Date Published:
Journal Name:
Constructionism 2020
Page Range / eLocation ID:
199-212
Format(s):
Medium: X
Sponsoring Org:
National Science Foundation
More Like this
  1. null (Ed.)
    Code-first learning entails the use of computer code to learn a concept, and creating computational models is one such effective method for learning about scientific phenomena. Many code-first learning approaches employ the visual block-based programming paradigm in order to be accessible to school children with no prior programming experience, providing them with high- level domain-specific code-blocks that encapsulate the underlying complex programming logic. However, even with the aid of visual clues and the benefit of simpler primitives like “forward” and “repeat,” many phenomena studied in classrooms such as the behavior of gas particles in Kinetic Molecular Theory (KMT) are challenging to describe in code. We hypothesized that code blocks designed from a phenomenological perspective to model the behavior of familiar objects and events would both promote students’ authoring of computational models and their ability to encode and test their beliefs within their models. We created these phenomenological blocks within a code-first gas particle sandbox and integrated it into a KMT lesson plan. Two high school teachers taught this curriculum to 121 students, from which we gathered and analyzed video footage from lesson activities and student focus groups. We found that the phenomenological blocks gave students the ability to start programming right away and to express their intuitive understanding of KMT through computational models. This exploratory study demonstrates the potential for phenomenological programming to broaden the application and accessibility of code-first computational modeling for learning scientific phenomena. 
    more » « less
  2. null (Ed.)
    There has been a growing interest in the use of computer-based models of scientific phenomena as part of classroom curricula, especially models that learners create for themselves. However, while studies show that constructing computational models of phenomena can serve as a powerful foundation for learning science, this approach has struggled to gain widespread adoption in classrooms because it not only requires teachers to learn sophisticated technological tools (such as computer programming), but it also requires precious instructional time to introduce these tools to students. Moreover, many core scientific topics such as the kinetic molecular theory, natural selection, and electricity are difficult to model even with novice-friendly environments. To address these limitations, we present a novel design approach called phenomenological programming that builds on students' intuitive understanding of real-world objects, patterns, and events to support the construction of agent-based computational models. We present preliminary case studies and discuss their implications for STEM content learning and the learnability and expressive power of phenomenological programming. 
    more » « less
  3. This paper draws on a larger project in which we design for students to iteratively engage in scientific practices of computational modeling and data analysis. Here, we report on two sixth-grade science classes’ work in a unit about how ink diffuses through hot and cold water. Using interaction analysis, we analyzed what dimensions students attended to as they analyzed data, constructed computational models, and compared the two to validate their models. Our analysis led to three findings: 1. Visual cues from video data were salient to students who heavily drew on them to iterate on their models.; 2. Programming computational models raised questions about the behavior of the individual particles in the phenomenon.; and 3. The visual data made salient the contrasting conditions being modeled. However, instead of developing a single model that explained diffusion in both hot and cold water, students programmed distinct behaviors for each condition. The findings illustrate how visual data and modeling together can help students generate explanations to account for scientific phenomena and show evidence that students need explicit supports for thinking about models as providing an explanation for a range of related conditions in the system. 
    more » « less
  4. Computational Thinking (CT) is being infused into curricula in a variety of core K-12 STEM courses. As these topics are being introduced to students without prior programming experience and are potentially taught by instructors unfamiliar with programming and CT, appropriate lesson design might help support both students and teachers. “Use-Modify-Create" (UMC), a CT lesson progression, has students ease into CT topics by first “Using" a given artifact, “Modifying" an existing one, and then eventually “Creating" new ones. While studies have presented lessons adopting and adapting this progression and advocating for its use, few have focused on evaluating UMC’s pedagogical effectiveness and claims. We present a comparison study between two CT lesson progressions for middle school science classes. Students participated in a 4-day activity focused on developing an agent-based simulation in a block-based programming environment. While some classrooms had students develop code on days 2-4, others used a scaffolded lesson plan modeled after the UMC framework. Through analyzing student’s exit tickets, classroom observations, and teacher interviews, we illustrate differences in perception of assignment difficulty from both the students and teachers, as well as student perception of artifact “ownership" between conditions. 
    more » « less
  5. In response to increasing calls to include computational thinking (CT) in K-12 education, some researchers have argued for integrating science learning and CT. In that vein, this paper investigates conceptual learning and computational practices through the use of a code-first modeling environment called Frog Pond in a middle school classroom. The environment was designed to enable learners to explore models of evolutionary shifts through domain-specific agent-based visual programming. It was implemented as a curricular unit in seventh grade science class. We analyzed video and log data of two contrasting student pairs. This paper presents one of our findings: Development of modular core functional code-units or what we call anchor code. Anchor code is a body of code that creates a stable base from which further explorations take place. We argue that anchor code is evidence for conceptual learning and computational practices. 
    more » « less