Salt Lake City, Utah
June 23, 2018
June 23, 2018
July 27, 2018
Computers in Education
Computer programming has become an essential skill in young people’s trajectories for academic success in STEM, entry into STEM professions, and increasingly across a broader spectrum of career choices. Yet as drop-out rates remain high in overcrowded introductory programming courses, recruiting and retention of a diverse student body, particularly women and students from underrepresented populations, into computing and STEM careers remains a complex challenge involving broad differences in student preparation, cultures and needs.
Learning how to code typically involves having to overcome profound initial barriers. For example, navigating unfamiliar and confusing programming environments can deter students from experimentation and playful practicing, and lacking feedback can leave students lost during homework. In order to eliminate any such barriers for programming novices, we have developed a student-centered online coding environment that provides instant feedback to students in introductory programming classes, that allows for early interventions and that increases and encourages student experimentation, exploration, and time spent coding. At the same time, our coding environment collects fine-grained (time-stamped keystroke-by-keystroke) data and compilation snapshots in order to help the instructor identify early on students who might benefit from extra support. Students authenticate via single sign-on which allows for seamless embedding of the coding environment into our learning management system and our in-class response system, both for homework and in-class coding exercises. Coding windows can be pre-populated with code and have an automated grading feature as well as enhanced compiler error messages, both of which can be enabled at the instructor’s discretion. All of these features allow students to gently ease into coding on the first day of classes with supportive features that can later on be slowly removed.
By analyzing hundreds of features such as syntax error ratios and patterns, time spent coding, number of correctly solved assignments, number of steps to solve an assignment, keystroke latency and many more, we have been able to identify, via educational data mining and machine learning methods, three critical junctures in a student’s coding career that are highly predictive of a student’s overall success in learning how to program. In particular, a student’s success or lack thereof with their first exposure to loops, their first exposure to a branching statement and/or their first exposure to a function were highly predictive of their success in the entire course. Extracting these relevant features allo wed us to build machine learning classifiers that can be utilized as a decision support tool for instructors to monitor students prone to dropping out of the course as early as in week two out of a ten-week course.
In addition, these insights have led to a redesign of our introductory programming course in order to better emphasize crucial language elements as early on as possible, as well as to increase the effectiveness of data-driven methods by collecting more and relevant data at the correct time. As an example, rather than presenting material in the typical order and fashion, our redesigned course now introduces loops on day one, in a hands-on exercise in class. Results of the redesign will be reported in a future publication.
Bonfert-Taylor, P., & Oeztuerk, A., & Servoz, B. (2018, June), Data-driven Curricular Decisions in Introductory Computing Classes Paper presented at 2018 ASEE Annual Conference & Exposition , Salt Lake City, Utah. https://peer.asee.org/30252
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2018 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015