{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,30]],"date-time":"2026-06-30T16:05:20Z","timestamp":1782835520967,"version":"3.54.5"},"reference-count":54,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2018,11,19]],"date-time":"2018-11-19T00:00:00Z","timestamp":1542585600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000001","name":"National Science Foundation","doi-asserted-by":"publisher","award":["DUE-1139861, IIS-1258571, and DUE-1432008"],"award-info":[{"award-number":["DUE-1139861, IIS-1258571, and DUE-1432008"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Comput. Educ."],"published-print":{"date-parts":[[2019,3,31]]},"abstract":"<jats:p>Recursion is one of the most important and hardest topics in lower division computer science courses. As it is an advanced programming skill, the best way to learn it is through targeted practice exercises. But the best practice problems are time consuming to manually grade by an instructor. As a consequence, students historically have completed only a small number of recursion programming exercises as part of their coursework. We present a new way for teaching such programming skills. Students view examples and visualizations, then practice a wide variety of automatically assessed, small-scale programming exercises that address the sub-skills required to learn recursion. The basic recursion tutorial (RecurTutor) teaches material typically encountered in CS2 courses. Students who used RecurTutor had significantly better grades on recursion exam questions than did students who used typical instruction. Students who experienced RecurTutor spent significantly more time on solving recursive programming exercises than students who experienced typical instruction, and came out with a significantly higher confidence level.<\/jats:p>","DOI":"10.1145\/3218328","type":"journal-article","created":{"date-parts":[[2018,11,20]],"date-time":"2018-11-20T14:19:23Z","timestamp":1542723563000},"page":"1-25","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":14,"title":["RecurTutor"],"prefix":"10.1145","volume":"19","author":[{"given":"Sally","family":"Hamouda","sequence":"first","affiliation":[{"name":"Rhode Island College, Prividence, RI"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Stephen H.","family":"Edwards","sequence":"additional","affiliation":[{"name":"Virginia Tech, Blacksburg, VA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5947-7450","authenticated-orcid":false,"given":"Hicham G.","family":"Elmongui","sequence":"additional","affiliation":[{"name":"Alexandria University and Umm Al-Qura University"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Jeremy V.","family":"Ernst","sequence":"additional","affiliation":[{"name":"Virginia Tech, Blacksburg, VA"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Clifford A.","family":"Shaffer","sequence":"additional","affiliation":[{"name":"Virginia Tech, Blacksburg, VA"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2018,11,19]]},"reference":[{"key":"e_1_2_1_1_1","first-page":"455","article-title":"Student monks\u2014Teaching recursion in an IS or CS programming course using the Towers of Hanoi","volume":"19","author":"Benander A. C.","year":"2008","journal-title":"Journal of Information Systems Education"},{"key":"e_1_2_1_2_1","volume-title":"Mental models of recursion and their use in the SCENT programming advisor. Knowledge Based Computer Systems","author":"Bhuiyan S."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/1581073.1581086"},{"key":"e_1_2_1_4_1","unstructured":"M. T. H. Chi R. Glaser and M. Farr. 2014. The Nature of Expertise. Psychology Press.  M. T. H. Chi R. Glaser and M. Farr. 2014. The Nature of Expertise. Psychology Press."},{"key":"e_1_2_1_5_1","volume-title":"Mayer","author":"Clark Ruth C.","year":"2011"},{"key":"e_1_2_1_6_1","unstructured":"Linda Crocker and James Algina. 1986. Introduction to Classical and Modern Test Theory. ERIC.  Linda Crocker and James Algina. 1986. Introduction to Classical and Modern Test Theory. ERIC."},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/1138403.1138432"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/507758.377507"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.5555\/2168874.2168894"},{"key":"e_1_2_1_10_1","first-page":"1","article-title":"Teaching and viewing recursion as delegation","volume":"23","author":"Edgington Jeffrey","year":"2007","journal-title":"Journal of Computing Sciences in the Colleges"},{"key":"e_1_2_1_11_1","unstructured":"J. Eldred J. Ward K. Snowden and Y. Dutton. 2006. The nature and role of confidence\u2014Ways of developing and recording changes in the learning context. Adults Learning Journal (2006).  J. Eldred J. Ward K. Snowden and Y. Dutton. 2006. The nature and role of confidence\u2014Ways of developing and recording changes in the learning context. Adults Learning Journal (2006)."},{"key":"e_1_2_1_12_1","volume-title":"Proceedings of the 2nd Program Visualization Workshop, Mordechai Ben-Ari (Ed.). HorstrupCentret, Denmark, 45--51","author":"Eskola J.","year":"2002"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/3017680.3017698"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/989314.989320"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.chb.2014.09.061"},{"key":"e_1_2_1_16_1","doi-asserted-by":"crossref","unstructured":"E. Fouh S. Hamouda M. F. Farghally and C. A. Shaffer. 2016. Automating learner feedback in an eTextbook for data structures and algorithms courses. In Challenges in ICT Education: Formative Assessment Learning Data Analytics and Gamification S. Caballe and R. Clariso (Eds.). Elsevier Science.  E. Fouh S. Hamouda M. F. Farghally and C. A. Shaffer. 2016. Automating learner feedback in an eTextbook for data structures and algorithms courses. In Challenges in ICT Education: Formative Assessment Learning Data Analytics and Gamification S. Caballe and R. Clariso (Eds.). Elsevier Science.","DOI":"10.1016\/B978-0-12-803637-2.00008-7"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2013.11.040"},{"key":"e_1_2_1_18_1","volume-title":"Retrieved on","author":"Frost Jim","year":"2014"},{"key":"e_1_2_1_19_1","unstructured":"Timothy S. Gegg-Harrison. 1999. Exploiting program schemata to teach recursive programming. Learning to Build and Comprehend Complex Information Structures: Prolog as a Case Study Ablex P. Brna B. duBoulay and H. Pain (Eds.). 347--379.  Timothy S. Gegg-Harrison. 1999. Exploiting program schemata to teach recursive programming. Learning to Build and Comprehend Complex Information Structures: Prolog as a Case Study Ablex P. Brna B. duBoulay and H. Pain (Eds.). 347--379."},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/330908.331875"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/299649.299718"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1789934.1789935"},{"key":"e_1_2_1_23_1","first-page":"1","article-title":"Teaching recursion using recursively-generated geometric designs","volume":"22","author":"Gordon Aaron","year":"2006","journal-title":"Journal of Computing Sciences in Colleges"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1595496.1562919"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/2445196.2445254"},{"key":"e_1_2_1_27_1","first-page":"4","article-title":"Teaching recursion using recursion graphs","volume":"23","author":"Hsin Wen-Jung","year":"2008","journal-title":"Journal of Computing Sciences in Colleges"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/800066.801346"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.2190\/BKML-B1QV-KDN4-8ULH"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1041624.1041673"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.15388\/infedu.2004.19"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/1822090.1822136"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1080\/03055690303275"},{"key":"e_1_2_1_34_1","volume-title":"Retrieved on","author":"Parlante N.","year":"2011"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1352322.1352142"},{"key":"e_1_2_1_36_1","volume-title":"Teaching for intelligence","author":"Presseisen Barbara Z."},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1080\/08993400500224310"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1076\/csed.13.2.137.14200"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/1269900.1268931"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1080\/10288457.2012.10740750"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/1822090.1822120"},{"key":"e_1_2_1_42_1","unstructured":"T. Schuller A. Brassett-Grundy A. Green C. Hammond and J. Preston. 2002. Learning Continuity and Change in Adult Life. Wider Benefits of Learning Research Report. ERIC.  T. Schuller A. Brassett-Grundy A. Green C. Hammond and J. Preston. 2002. Learning Continuity and Change in Adult Life. Wider Benefits of Learning Research Report. ERIC."},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/377435.377458"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.5555\/164632.164673"},{"key":"e_1_2_1_45_1","first-page":"1","article-title":"Using graphical examples to motivate the study of recursion","volume":"25","author":"Stephenson Ben","year":"2009","journal-title":"Journal of Computing Sciences in Colleges"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/563340.563414"},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/2493394.2493411"},{"key":"e_1_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/1953163.1953200"},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1006\/ijhc.2000.0433"},{"key":"e_1_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/1597849.1384332"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/52965.53033"},{"key":"e_1_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0360-1315(05)80013-2"},{"key":"e_1_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/1473195.1473219"},{"key":"e_1_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/274790.274315"},{"key":"e_1_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/289393.289419"}],"container-title":["ACM Transactions on Computing Education"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3218328","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3218328","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3218328","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T22:29:29Z","timestamp":1750285769000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3218328"}},"subtitle":["An Interactive Tutorial for Learning Recursion"],"short-title":[],"issued":{"date-parts":[[2018,11,19]]},"references-count":54,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2019,3,31]]}},"alternative-id":["10.1145\/3218328"],"URL":"https:\/\/doi.org\/10.1145\/3218328","relation":{},"ISSN":["1946-6226"],"issn-type":[{"value":"1946-6226","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,11,19]]},"assertion":[{"value":"2016-07-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-02-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-11-19","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}