loading page

Cracking the code: An evidence-based approach to teaching Python in an undergraduate earth science setting
  • +6
  • Ethan C. Campbell,
  • Katy M. Christensen,
  • Mikelle Nuwer,
  • Amrita Ahuja,
  • Owen Boram,
  • Reese Miller,
  • Junzhe Liu,
  • Isabelle Osuna,
  • Stephen C. Riser
Ethan C. Campbell
School of Oceanography, University of Washington

Corresponding Author:[email protected]

Author Profile
Katy M. Christensen
School of Oceanography, University of Washington

Corresponding Author:[email protected]

Author Profile
Mikelle Nuwer
School of Oceanography, University of Washington
Amrita Ahuja
School of Oceanography, University of Washington
Owen Boram
School of Oceanography, University of Washington
Reese Miller
School of Oceanography, University of Washington
Junzhe Liu
School of Oceanography, University of Washington
Author Profile
Isabelle Osuna
School of Oceanography, University of Washington
Stephen C. Riser
School of Oceanography, University of Washington
Author Profile

Abstract

Scientific programming has become increasingly essential for manipulating, visualizing, and interpreting the large volumes of data acquired in earth science research. Yet few domain-specific instructional approaches have been documented and assessed for their effectiveness in equipping geoscience undergraduate students with coding and data literacy skills. Here we report on an evidence-based redesign of an introductory Python programming course, taught fully remotely in 2020 in the School of Oceanography at the University of Washington. Key components included a flipped structure, activities infused with active learning, an individualized final research project, and a focus on creating an accessible learning environment. Cloud-based notebooks were used to teach fundamental Python syntax as well as functions from packages widely used in climate-related disciplines. By analyzing quantitative and qualitative student metrics from online learning platforms, surveys, assignments, and a student focus group, we conclude that the instructional design facilitated student learning and supported self-guided scientific inquiry. Students with less or no prior exposure to coding achieved similar success to peers with more previous experience, an outcome likely mediated by high engagement with course resources. We believe that the constructivist approach to teaching introductory programming and data analysis that we present could be broadly applicable across the earth sciences and in other scientific domains.
29 Jan 2024Submitted to ESS Open Archive
30 Jan 2024Published in ESS Open Archive