A Data-Driven Analysis of Informatively Hard Concepts in Introductory Programming

R. Paul Wiegand, Anthony Bucci, Amruth N. Kumar, Jennifer L. Albert, Alessio Gaspar · 2016

What are the concepts in introductory programming that are easy/hard for students? We propose to use Dimension Extraction algorithm (DECA) inspired by coevolution and co-optimization theory to answer this question. We propose and use the metrics of informatively easy/hard concepts to identify programming concepts that are solved correctly by the most "dominated student" versus solved incorrectly by the most "dominant student". As a proof of concept, we applied DECA to analyze the data collected by software tutors called problets used by introductory programming students in Spring 2014. We present the results, i.e., informatively easy/hard concepts on a dozen different topics covered in a typical introductory programming course. It is hoped that these results will inform programming instructors on the concepts they should (de)/emphasize in class. They will also contribute towards creating a concept inventory for introductory programming.

Read the paper · More papers on PaperTik