Leo Ureel Is PI of $599K NSF R and D Grant


Leo Ureel

Leo Ureel (CS/ICC-CompEd) is principal investigator (PI) on a project that has received a $599,732 research and development grant from the National Science Foundation. The project, “Rich, Immediate Critique of Antipatterns (RICA) in Novice Programmer Code: Broadening Adoption, Supporting Student Learning, and Enhancing Programming Competencies,” includes Co-PIs Laura Brown (CS/ICC-CompEd, DataS), Jon Sticklen (EF/ICC) and Michelle Jarvie-Eggart (EF/ICC).

Project Abstract

Novice Antipatterns are code mistakes that experts rarely make. Detecting problems in code and providing rich, immediate feedback to the student programmer significantly impacts learning outcomes. Providing this feedback in a timely manner through human graders is difficult due to rapidly increasing class sizes and instructor shortages. The RICA project will develop a code critiquer to provide essential feedback to first-year engineering students. Code critiquers analyze source code, look for common mistakes, and provide rich, immediate feedback to students while they engage in coding. The novice antipatterns that the project will study are common code structures, found in student programs, that cause more problems than they solve. The project team will extend an existing Java code critiquer, WebTA, to study the novice antipatterns in the MATLAB code of first-year engineering students. WebTA will enable the development of a workforce positioned for a world in which programming has become ubiquitous in the workplace.

The project will use a mixed-methods approach to evaluate the impacts of using an innovative code critiquer, WebTA, as a learning tool in a first-year engineering course. Our hypothesis is that this intervention will: (a) improve students’ computing skills, (b) improve students’ computing and engineering self-efficacy, and (c) enable students and instructors to converse in a common language around antipatterns. Students will use WebTA to engage in a tight learning cycle of coding, reflecting on feedback, and making changes. First-year engineering instructors will assist in identifying and encoding novice antipatterns in the code critiquer system; thus, creating a MATLAB antipattern library. The project team will partner with the course instructors to embed the terminology and examples of antipatterns in instructional materials. WebTA will be developed as a freely available software system. The distribution of WebTA will begin to address some of the distributive justice issues around access to programming education. Underfunded departments with limited resources for instructional teams (few teaching assistants for large classes) and instructors with little programming backgrounds may utilize code critiquers to empower students to advance their programming knowledge; broadening participation in computer science, engineering, and other STEM fields.

Project Abstract (from https://www.nsf.gov/awardsearch/showAward?AWD_ID=2142309)

This project aims to serve the national interest by developing a system that will automatically detect coding mistakes made by students in programming classes. Providing rich, immediate feedback to students significantly improves learning outcomes resulting in better coding skills. Providing feedback in a timely manner using human graders is difficult due to rapidly increasing class sizes and instructor shortages. The goal of this project is to develop a system that can automatically provide high-quality feedback to students in introductory programming classes. Once developed, the system can be used by departments with limited resources to provide timely feedback to students. The result will be students with strong coding skills who will be ready to meet the current demand for programmers in the technology workforce.

The project team will extend an existing system, WebTA, to study the common errors that are made by students in introductory programming courses. A mixed-methods approach will be used to evaluate the impacts of using WebTA as a learning tool in a first-year engineering course. The hypothesis is that this intervention will: (a) improve students’ computing skills, (b) improve students’ computing and engineering self-efficacy, and (c) enable students and instructors to converse in a common language around antipatterns. Students will use WebTA to engage in a tight learning cycle of coding, reflecting on feedback, and making changes. First-year instructors will assist in identifying and encoding novice antipatterns, resulting in a MATLAB antipattern library. The project team will partner with course instructors to embed the terminology and examples of antipatterns in their instructional materials.

WebTA will be developed as a freely available software system. The NSF IUSE: EHR Program supports research and development projects to improve the effectiveness of STEM education for all students. Through the Engaged Student Learning track, the program supports the creation, exploration, and implementation of promising practices and tools.

Abstract:

View the award on the NSF website.