{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,24]],"date-time":"2026-01-24T18:04:42Z","timestamp":1769277882288,"version":"3.49.0"},"publisher-location":"Singapore","reference-count":21,"publisher":"Springer Nature Singapore","isbn-type":[{"value":"9789819644063","type":"print"},{"value":"9789819644070","type":"electronic"}],"license":[{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2025]]},"DOI":"10.1007\/978-981-96-4407-0_5","type":"book-chapter","created":{"date-parts":[[2025,4,16]],"date-time":"2025-04-16T01:30:08Z","timestamp":1744767008000},"page":"59-70","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["An Empirical Study of\u00a0Code Pattern Reuse and\u00a0Pattern Preference Consistency in\u00a0Novice Programmers"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-6936-0253","authenticated-orcid":false,"given":"Philip I. S.","family":"Lei","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6659-660X","authenticated-orcid":false,"given":"Ant\u00f3nio Jos\u00e9","family":"Mendes","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-8022-7744","authenticated-orcid":false,"given":"Chan-tong","family":"Lam","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2025,4,17]]},"reference":[{"key":"5_CR1","doi-asserted-by":"publisher","first-page":"1105","DOI":"10.1007\/s11423-018-09644-1","volume":"67","author":"A Abyaa","year":"2019","unstructured":"Abyaa, A., Khalidi Idrissi, M., Bennani, S.: Learner modelling: systematic review of the literature from the last 5 years. Educ. Tech. Res. Dev. 67, 1105\u20131143 (2019)","journal-title":"Educ. Tech. Res. Dev."},{"key":"5_CR2","doi-asserted-by":"publisher","unstructured":"Lei, P.I., Mendes, A.J.: A systematic literature review on knowledge tracing in learning programming. In: 2021 IEEE Frontiers in Education Conference (FIE), pp.\u00a01\u20137 (2021). https:\/\/doi.org\/10.1109\/FIE49875.2021.9637323","DOI":"10.1109\/FIE49875.2021.9637323"},{"key":"5_CR3","doi-asserted-by":"publisher","unstructured":"Lowe, T.: Explaining novice programmer\u2019s struggles, in two parts: revisiting the ITiCSE 2004 working group\u2019s study using dual process theory. In: Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science Education, ITiCSE 2019, pp. 30\u201336. Association for Computing Machinery, New York (2019). https:\/\/doi.org\/10.1145\/3304221.3319775","DOI":"10.1145\/3304221.3319775"},{"key":"5_CR4","doi-asserted-by":"crossref","unstructured":"Gomes, A., Mendes, A.: A teacher\u2019s view about introductory programming teaching and learning: difficulties, strategies and motivations. In: Proceedings of the 2014 IEEE Frontiers in Education Conference (FIE), pp.\u00a01\u20138 (2014)","DOI":"10.1109\/FIE.2014.7044086"},{"key":"5_CR5","doi-asserted-by":"publisher","unstructured":"Izu, C., et al.: Fostering program comprehension in novice programmers - learning activities and learning trajectories. In: Proceedings of the Working Group Reports on Innovation and Technology in Computer Science Education, ITiCSE-WGR 2019, pp. 27\u201352. Association for Computing Machinery, New York (2019). https:\/\/doi.org\/10.1145\/3344429.3372501","DOI":"10.1145\/3344429.3372501"},{"key":"5_CR6","unstructured":"Teague, D., Corney, M., Ahadi, A., Lister, R.: A qualitative think aloud study of the early neo-piagetian stages of reasoning in novice programmers. In: Proceedings of the Fifteenth Australasian Computing Education Conference, ACE 2013, vol. 136, pp. 87\u201395. Australian Computer Society, Inc. (2013)"},{"key":"5_CR7","doi-asserted-by":"publisher","unstructured":"Kaczmarczyk, L.C., Petrick, E.R., East, J.P., Herman, G.L.: Identifying student misconceptions of programming. In: Proceedings of the 41st ACM Technical Symposium on Computer Science Education, SIGCSE 2010, pp. 107\u2013111. Association for Computing Machinery, New York (2010). https:\/\/doi.org\/10.1145\/1734263.1734299","DOI":"10.1145\/1734263.1734299"},{"key":"5_CR8","unstructured":"De\u00a0Raadt, M., Watson, R., Toleman, M.: Teaching and assessing programming strategies explicitly. In: Proceedings of the 11th Australasian Computing Education Conference (ACE 2009), vol.\u00a095, pp. 45\u201354. Australian Computer Society Inc. (2009)"},{"issue":"9","key":"5_CR9","doi-asserted-by":"publisher","first-page":"850","DOI":"10.1145\/6592.6594","volume":"29","author":"E Soloway","year":"1986","unstructured":"Soloway, E.: Learning to program = learning to construct mechanisms and explanations. Commun. ACM 29(9), 850\u2013858 (1986). https:\/\/doi.org\/10.1145\/6592.6594","journal-title":"Commun. ACM"},{"issue":"3","key":"5_CR10","doi-asserted-by":"publisher","first-page":"389","DOI":"10.1207\/s15516709cog1303_3","volume":"13","author":"RS Rist","year":"1989","unstructured":"Rist, R.S.: Schema creation in programming. Cogn. Sci. 13(3), 389\u2013414 (1989)","journal-title":"Cogn. Sci."},{"key":"5_CR11","doi-asserted-by":"publisher","unstructured":"Castro, F.E.V., Fisler, K.: Qualitative analyses of movements between task-level and code-level thinking of novice programmers. In: Proceedings of the 51st ACM Technical Symposium on Computer Science Education, SIGCSE 2020, pp. 487\u2013493. Association for Computing Machinery, New York (2020). https:\/\/doi.org\/10.1145\/3328778.3366847","DOI":"10.1145\/3328778.3366847"},{"key":"5_CR12","doi-asserted-by":"publisher","unstructured":"Renske\u00a0Weeda, S.S., Barendsen, E.: Unraveling novices\u2019 code composition difficulties. Comput. Sci. Educ. 1\u201328 (2023). https:\/\/doi.org\/10.1080\/08993408.2023.2169067","DOI":"10.1080\/08993408.2023.2169067"},{"key":"5_CR13","unstructured":"Rist, R.S., et\u00a0al.: Plans in programming: definition, demonstration, and development. In: Empirical Studies of Programmers, pp. 28\u201347 (1986)"},{"key":"5_CR14","unstructured":"Rist, R.S.: Learning to program: schema creation, application and evaluation. In: Computer Science Education and Research, pp. 175\u2013197 (2004)"},{"key":"5_CR15","doi-asserted-by":"publisher","unstructured":"Wallingford, E.: Toward a first course based on object-oriented patterns. In: Proceedings of the Twenty-Seventh SIGCSE Technical Symposium on Computer Science Education, SIGCSE 1996, pp. 27\u201331. Association for Computing Machinery, New York (1996). https:\/\/doi.org\/10.1145\/236452.236485","DOI":"10.1145\/236452.236485"},{"key":"5_CR16","doi-asserted-by":"publisher","unstructured":"Muller, O.: Pattern oriented instruction and the enhancement of analogical reasoning. In: Proceedings of the First International Workshop on Computing Education Research, ICER 2005, pp. 57\u201367. Association for Computing Machinery, New York (2005). https:\/\/doi.org\/10.1145\/1089786.1089792","DOI":"10.1145\/1089786.1089792"},{"issue":"3","key":"5_CR17","doi-asserted-by":"publisher","first-page":"151","DOI":"10.1145\/1269900.1268830","volume":"39","author":"O Muller","year":"2007","unstructured":"Muller, O., Ginat, D., Haberman, B.: Pattern-oriented instruction and its influence on problem decomposition and solution construction. SIGCSE Bull. 39(3), 151\u2013155 (2007). https:\/\/doi.org\/10.1145\/1269900.1268830","journal-title":"SIGCSE Bull."},{"key":"5_CR18","doi-asserted-by":"publisher","unstructured":"Iyer, V., Zilles, C.: Pattern census: a characterization of pattern usage in early programming courses. In: Proceedings of the 52nd ACM Technical Symposium on Computer Science Education, SIGCSE 2021, pp. 45\u201351. Association for Computing Machinery, New York (2021). https:\/\/doi.org\/10.1145\/3408877.3432442","DOI":"10.1145\/3408877.3432442"},{"key":"5_CR19","doi-asserted-by":"publisher","unstructured":"Izu, C., Lonati, V., Morpurgo, A., Sanchez, M.: An inventory of goals from CS1 programs processing a data series. In: 2021 IEEE Frontiers in Education Conference (FIE), pp.\u00a01\u20138 (2021). https:\/\/doi.org\/10.1109\/FIE49875.2021.9637360","DOI":"10.1109\/FIE49875.2021.9637360"},{"key":"5_CR20","unstructured":"Bernstein, D.: Patterns for Beginning Programmers. James Madison University (2022)"},{"issue":"10","key":"5_CR21","doi-asserted-by":"publisher","first-page":"1367","DOI":"10.1109\/TPAMI.2004.75","volume":"26","author":"L Cordella","year":"2004","unstructured":"Cordella, L., Foggia, P., Sansone, C., Vento, M.: A (sub)graph isomorphism algorithm for matching large graphs. IEEE Trans. Pattern Anal. Mach. Intell. 26(10), 1367\u20131372 (2004). https:\/\/doi.org\/10.1109\/TPAMI.2004.75","journal-title":"IEEE Trans. Pattern Anal. Mach. Intell."}],"container-title":["Lecture Notes in Computer Science","Learning Technologies and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-981-96-4407-0_5","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,9,6]],"date-time":"2025-09-06T11:32:56Z","timestamp":1757158376000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-981-96-4407-0_5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025]]},"ISBN":["9789819644063","9789819644070"],"references-count":21,"URL":"https:\/\/doi.org\/10.1007\/978-981-96-4407-0_5","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2025]]},"assertion":[{"value":"17 April 2025","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"The authors have no competing interests to declare that are relevant to the content of this article.","order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Disclosure of Interests"}},{"value":"SETE","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Emerging Technologies for Education","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Shanghai","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"China","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2024","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"26 November 2024","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"28 November 2024","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"9","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"sete2024","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/www.icwl-sete.com\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}