Authentic Research to teach Computational Thinking

CSTA 2020 Poster Talk (~8 min)

Authentic Research to teach Computational Thinking

How can a research experience for teachers centered around computing affect classroom instruction? A two-summer research experience for teachers program at Rice University had some direct and indirect impacts on the classroom instruction of an AP Physics course. A program overview and project results will be discussed. The curriculum impact will be discussed along with the indirect impacts of teacher research on instruction.

What is an RET?

In the summer of 2018, I was a part of the Research Experience for Teachers at Rice University through the Scalable Health Labs in the Department of Electrical and Computer Engineering and under the auspices of the Rice Office of STEM Engagement and funded by two grants through the NSF, the PATHS-UP program and the Expeditions in Computing program.

RET summer programs for teachers vary from six weeks to a year. The programs are characterized by intensive hands-on involvement with an active research project, and participants are often asked to craft their questions and projects in the area of study. These programs embed the teacher in a science lab to perform research work, and participants are expected to produce an artifact in the course of the program.

RET and Computational Thinking (CT)

Some RET programs put the teacher into the role of laboratory technician, where the teacher prepares trials and gathers data via instrumentation. In contrast, the Rice PATHS-UP and Expeditions RET programs have the teacher developing computational skills like computer programming or algorithm design as well as working with electrical engineering concepts and hardware.

CT vs Computer Programming

CT is defined here using the framework from Weintrop et al. (2016):

  • Data practices involve collecting, creating, manipulating, and visualizing data. Data practices include the newer field of data science and handling problems involving big data sets that are intractable without computing.
  • Modeling and simulation practices involve using computational models to understand concepts and find and test solutions. Additionally, modeling and simulation practices mean assessing, designing, and creating computational models.
  • Computational problem-solving methods involve more traditional computer science topics such as coding and debugging solutions using programming techniques.
  • Systems thinking means considering a computational system as a whole, including top-down thinking and information flow within a system and into and out of a system.

2018 and 2019 Research Pages

Guided Inquiry vs Open Inquiry

The 2018 program was a pilot program. We tried things and failed and tried something else and it would progress our work a bit and then the cycle repeated. Our research advisors were also unsure about how this program would work. The 2018 cohort acted was a pioneering group. Each of us reached an end point by the research symposium that represented our individual struggle. This was open inquiry. We were given a wide field of study and told to find something interesting in that area to explore.

The 2019 program started guide rails. The research advisor gave explicit steps to complete to learn particular aspects of the much more narrow field of study. Each of us produced something by the end of the summer that tackled our individual take on the specific research area. This was guided inquiry.

Anecdotally, the frustration level in 2019 was lower overall and the level of the computing artifacts was more advanced. But the open inquiry model gave participants a lot of freedom to explore. Both modes have merit, but the guided inquiry method seems to have led to more computing knowledge by virtue of the final products.

Incidentally, both cohorts worked together in a large workspace not far from the lab but separated from it. This led to constant collaboration and many incidents of pair programming and shared debugging as well as impromptu team meetings to discuss our work as a group. Our research cohort operated very differently than most RET programs where individual teachers are embedded into a lab environment and act as both researcher and lab tech.

Cognitive Load Theory and Worked Examples Theoretical Framework

Research into how worked examples can reduce cognitive load in computer science suggests some topics are difficult to master for most learners using open-ended constructivist learning frameworks. The 2018 research interns were given some working code to use but not much in the way of explanation or “worked examples”. In 2019 the research lead provided scaffolded examples which he worked through before giving us, as learners, some practice extended those examples. In this way, we each built our own Python applications that could implement face tracking and could determine the incident light in a given pixel block in any desired channel.

Worked Example showing how to read pixels from a given region of the webcam

Worked Example showing how to use “thresholding” for pixels read from the webcam

Curricular Artifacts

Besides our poster presentations at the research symposium at the end of the summer, we were tasked to take our research and bring it into our classrooms. We each created a lesson that had to make it through the vetting process on

2018 – Visualize your Heartbeat as a multi-day engineering project and single day AP Physics C lab activity. Both versions of the activity involve using microcontrollers and heartbeat sensors so students can collect their own pulse data and reduce these data to create a visualization of the students’ heartbeats. Besides the code driving the data collection, the use of spreadsheets to process data adds a CT element beyond computer programming. There is also a version of this lab that asks students to code in micropython that can use an Arduino-based microcontroller or a Micro:bit microcontroller.

2019 – In 2019, I actually worked in 2 unrelated research programs. I took a week off from the Rice RET to head to McDonald Observatory with a science teacher cohort to collect spectra of low metallicity stars for an astronomy research project. I saw other researchers on the mountain were using code to reduce their data for study. This led me to combine my computing research experience and my astronomy research experience into one computing-centered astronomy lab activity called Measuring the Milky With Stars. This projects uses Python to process real astronomical data to determine the distance to a globular cluster.