Use expert knowledge instead of data: generating hints for hour of code exercises

Milo Buwalda, J.T. Jeuring, Nico Naus

Research output: Chapter in Book/Report/Conference proceedingConference article in proceedingAcademicpeer-review

Abstract

Within the field of on-line tutoring systems for learning programming, such as Code.org's Hour of code, there is a trend to use previous student data to give hints. This paper shows that it is better to use expert knowledge to provide hints in environments such as Code.org's Hour of code. We present a heuristic-based approach to generating next-step hints. We use pattern matching algorithms to identify heuristics and apply each identified heuristic to an input program. We generate a next-step hint by selecting the highest scoring heuristic using a scoring function. By comparing our results with results of a previous experiment on Hour of code we show that a heuristics-based approach to providing hints gives results that are impossible to further improve. These basic heuristics are sufficient to efficiently mimic experts' next-step hints.
Original languageEnglish
Title of host publication L@S '18 Proceedings of the Fifth Annual ACM Conference on Learning at Scale
Place of PublicationNew York, NY
PublisherAssociation for Computing Machinery (ACM)
ISBN (Print)9781450358866
DOIs
Publication statusPublished - 26 Jun 2018
EventFifth Annual ACM Conference on Learning at Scale - London, United Kingdom
Duration: 26 Jun 201828 Jun 2018
https://learningatscale.acm.org/las2018/

Conference

ConferenceFifth Annual ACM Conference on Learning at Scale
Abbreviated titleL@S 18
CountryUnited Kingdom
CityLondon
Period26/06/1828/06/18
Internet address

Fingerprint Dive into the research topics of 'Use expert knowledge instead of data: generating hints for hour of code exercises'. Together they form a unique fingerprint.

  • Cite this

    Buwalda, M., Jeuring, J. T., & Naus, N. (2018). Use expert knowledge instead of data: generating hints for hour of code exercises. In L@S '18 Proceedings of the Fifth Annual ACM Conference on Learning at Scale [32] Association for Computing Machinery (ACM). https://doi.org/10.1145/3231644.3231690