WIP: Code Insight: Combining Code Reading and Debugging Practices for Active Learning in Entry-Level Computer Science Courses

This work-in-progress innovative practice paper describes an active learning in-class activity to be used in introductory programming courses. In the software development industry, critical thinking, problem-solving, code review, and debugging are vital skill sets software engineers require to build software that meets requirements. Commercial software companies often have extensive code review processes to make sure that developed code is of high quality. Many new developers work in quality assurance and maintenance of software products. For these jobs, learning to understand code written by peers is an essential skill. Code review skills are rarely explicitly taught in required programming classes in CS, especially at the entry-level. In beginning programming classes, students are usually thrilled if they can find one way to make a program work. They rarely see, let alone generate, multiple approaches to solving a single problem. In this research, we propose an active learning approach that provides students with experience reviewing and analyzing existing code. In our activities, students practice code review skills by exploring multiple approaches to solve a single problem. We have developed an in-class active learning approach, called Code Insight, for entry-level programming courses. Code Insight activities are designed based on student-created answers to previous homework and midterm problems. Students are given the code to upload into their development environment, so they have the tools available that a typical software developer would have. Students use a classroom response system to report the correctness of these solutions by responding to multiple-choice questions. Preliminary results show that students prefer doing this activity to listening to lectures. In addition, students report that they learn more programming from this structure of the exercise. The degree to which Code Insight can improve student learning in beginning programming will be assessed using performance on other learning assignments, particularly those on programming questions in the midterm and final examinations.

Authors

Institutions

Publication Details

Published
2024-10-13
DOI
https://doi.org/10.1109/fie61694.2024.10893296
Citations
4
Primary Topic
Teaching and Learning Programming
Type
article
Field-Weighted Citation Impact
1.65
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

WIP: Code Insight: Combining Code Reading and Debugging Practices for Active Learning in Entry-Level Computer Science Courses

Deborah Trytten, Keerti Banweer
4 citations
Teaching and Learning Programming
1.65
article

WIP: Code Insight: Combining Code Reading and Debugging Practices for Active Learning in Entry-Level Computer Science Courses

Deborah Trytten, Keerti Banweer
article en
4 citations

Abstract

This work-in-progress innovative practice paper describes an active learning in-class activity to be used in introductory programming courses. In the software development industry, critical thinking, problem-solving, code review, and debugging are vital skill sets software engineers require to build software that meets requirements. Commercial software companies often have extensive code review processes to make sure that developed code is of high quality. Many new developers work in quality assurance and maintenance of software products. For these jobs, learning to understand code written by peers is an essential skill. Code review skills are rarely explicitly taught in required programming classes in CS, especially at the entry-level. In beginning programming classes, students are usually thrilled if they can find one way to make a program work. They rarely see, let alone generate, multiple approaches to solving a single problem. In this research, we propose an active learning approach that provides students with experience reviewing and analyzing existing code. In our activities, students practice code review skills by exploring multiple approaches to solve a single problem. We have developed an in-class active learning approach, called Code Insight, for entry-level programming courses. Code Insight activities are designed based on student-created answers to previous homework and midterm problems. Students are given the code to upload into their development environment, so they have the tools available that a typical software developer would have. Students use a classroom response system to report the correctness of these solutions by responding to multiple-choice questions. Preliminary results show that students prefer doing this activity to listening to lectures. In addition, students report that they learn more programming from this structure of the exercise. The degree to which Code Insight can improve student learning in beginning programming will be assessed using performance on other learning assignments, particularly those on programming questions in the midterm and final examinations.

University of Oklahoma (US)
Quality Education
Openalex Percentile: Top 11%
Teaching and Learning Programming
1.65
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.