Abstract
Understanding the cognitive factors that contribute to introductory programming students’ abilities to learn to program is critical to helping computer educators create better opportunities for students to improve their programming performance. The goal of this research is to explore cognitive factors that have an influence on programming performance in introductory programming courses in particular. The study documents 17 factors from 25 empirical studies that analyzed the influence of these factors on programming performance. Our analysis shows a wide range of cognitive factors studied and interrelated groups of factors studied in literature focused on introductory programming courses. This is a valuable review of information regarding influencing cognitive factors to restructure aspects of future introductory programming course curricula to benefit students’ ability to learn to program.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Bennedsen J, Caspersen ME (2019) Failure rates in introductory programming: 12 years later. ACM Inroads 10(2):30–36
Liao SN, Shah K, Griswold WG, Porter L (2021) A quantitative analysis of study habits among lower-and higher-performing students in CS1. In: Proceedings of the 26th ACM conference on innovation and technology in computer science education, vol 1. pp 366–372
Babes-Vroman M, Juniewicz I, Lucarelli B, Fox N, Nguyen T, Tjang A, Haldeman G, Mehta A, Chokshi R (2017) Exploring gender diversity in CS at a large public R1 research university. In: Proceedings of the 2017 ACM SIGCSE technical symposium on computer science education, pp 51–56
Nolan K, Bergin S (2016) The role of anxiety when learning to program: a systematic review of the literature. In: Proceedings of the 16th koli calling international conference on computing education research, pp 61–70
Medeiros RP, Ramalho GL, Falcão TP (2018) A systematic literature review on teaching and learning introductory programming in higher education. IEEE Trans Educ 62(2):77–90
Luxton-Reilly A, Albluwi I, Becker BA, Giannakos M, Kumar AN, Ott L, Paterson J, Scott MJ, Sheard J, Szabo C (2018) Introductory programming: a systematic literature review. In: Proceedings companion of the 23rd annual ACM conference on innovation and technology in computer science education, pp 55–106
Rountree N, Rountree J, Robins A (2002) Predictors of success and failure in a CS1 course. ACM SIGCSE Bull 34(4):121–124
Kitchenham B (2004) Procedures for performing systematic reviews. Keele UK Keele Univ 33:1–26
Krathwohl DR (2002) A revision of Bloom’s taxonomy: an overview. Theory Pract 41(4):212–218
Flavell JH (1979) Metacognition and cognitive monitoring: a new area of cognitive–developmental inquiry. Am Psychol 34(10):906
Danili E, Reid N (2006) Cognitive factors that can potentially affect pupils’ test performance. Chem Educ Res Pract 7(2):64–83
Cognitive and metacognitive definition. https://neurotray.com/cognitive-and-metacognitive-definition/
Schneider WJ, McGrew KS (2018) The Cattell–Horn–Carroll theory of cognitive abilities
Veerasamy AK, Laakso MJ, D’Souza D, Salakoski T (2021) Predictive models as early warning systems: a bayesian classification model to identify at-risk students of programming. In: Intelligent computing 2021, Springer, Cham, pp 174–195
Flanigan AE, Peteranetz MS, Shell DF, Soh LK (2022) Shifting beliefs in computer science: change in CS student mindsets. ACM Trans Comput Educ (TOCE) 22(2):1–24
Werth LH (1986) Predicting student performance in a beginning computer science class. ACM SIGCSE Bull 18(1):138–143
Porter L, Zingaro D, Lister R (2014) Predicting student success using fine grain clicker data. In: Proceedings of the tenth annual conference on International computing education research, pp 51–58
Venables A, Tan G, Lister R (2009) A closer look at tracing, explaining and code writing skills in the novice programmer. In: Proceedings of the fifth international workshop on computing education research workshop, pp 117–128
Lishinski A, Yadav A, Enbody R, Good J (2016) The influence of problem solving abilities on students’ performance on different assessment tasks in CS1. In: Proceedings of the 47th ACM technical symposium on computing science education, pp 329–334
Lishinski A (2016) Cognitive, affective, and dispositional components of learning programming. In: Proceedings of the 2016 ACM conference on international computing education research, pp 261–262
Sharma R, Shen H (2018) The interplay of factors affecting learning of introductory programming: a comparative study of an Australian and an Indian university. In: 2018 13th International conference on computer science and education (ICCSE), IEEE, pp 1–6
Keen A, Mammen K (2015) Program decomposition and complexity in CS1. In: Proceedings of the 46th ACM technical symposium on computer science education. pp 48–53
Gomes AJ, Santos AN, Mendes AJ (2012) A study on students’ behaviours and attitudes towards learning to program. In: Proceedings of the 17th ACM annual conference on innovation and technology in computer science education, pp 132–137
Çakıroğlu Ü (2014) Analyzing the effect of learning styles and study habits of distance learners on learning performances: a case of an introductory programming course. Int Rev Res Open Distrib Learn 15(4):161–185
Lagus J, Longi K, Klami A, Hellas A (2018) Transfer-learning methods in programming course outcome prediction. ACM Trans Comput Educ (TOCE) 18(4):1–8
Ahadi A, Lister R, Haapala H, Vihavainen A (Aug, 2015) Exploring machine learning methods to automatically identify students in need of assistance. In: Proceedings of the eleventh annual international conference on international computing education research, pp 121–130
Lakanen AJ, Lappalainen V, Isomöttönen V (2015) Revisiting rainfall to explore exam questions and performance on cs1. In: Proceedings of the 15th Koli calling conference on computing education research, pp 40–49
Khosravi H, Cooper KM (2017) Using learning analytics to investigate patterns of performance and engagement in large classes. In: Proceedings of the 2017 acm sigcse technical symposium on computer science education, pp. 309–314
Kanaparan G, Cullen R, Mason D (2013) Self-efficacy and engagement as predictors of student programming performance
Höök LJ, Eckerdal A (2015) On the bimodality in an introductory programming course: an analysis of student performance factors. In: 2015 International conference on learning and teaching in computing and engineering 2015 Apr 9, IEEE, pp 79–86
Dorn B, Elliott TA (2015) Empirical validation and application of the computing attitudes survey. Comput Sci Educ 25(1):1–36
Ishizue R, Sakamoto K, Washizaki H, Fukazawa Y (2013) Student placement and skill ranking predictors for programming classes using class attitude, psychological scales, and code metrics. Res Pract Technol Enhanc Learn 13(1):1–20
Cutts Q, Haden P, Sutton K, Box I, Hamer J, Lister R, Tolhurst D, Fincher S, Robins A, Baker B, de Raadt M (2006) The ability to articulate strategy as a predictor of programming skill. In: Conferences in research and practice in information technology series
Lunn S, Ross M, Hazari Z, Weiss MA, Georgiopoulos M, Christensen K (2021) How do educational experiences predict computing identity? ACM Trans Comput Educ (TOCE) 22(2):1–28
Brown J (2009) Investigating collaborative self-modeling and its impact on introductory programming self-efficacy. In: 2009 IEEE symposium on visual languages and human-centric computing (VL/HCC) 2009 Sep 20, IEEE, pp 244–245
Kanaparan G, Cullen R, Mason DD (2017) Self-efficacy and behavioural engagement in introductory programming courses
Scott MJ, Ghinea G (2014) Measuring enrichment: the assembly and validation of an instrument to assess student self-beliefs in CS1. In: Proceedings of the tenth annual conference on International computing education research, pp 123–130
Wiedenbeck S, Sun X, Chintakovid T (2007) Antecedents to end users’ success in learning to program in an introductory programming course. In: IEEE Symposium on visual languages and human-centric computing (VL/HCC 2007) 2007 Sep 23, IEEE, pp 69–72
Cain A (2014) Factors influencing student learning in portfolio assessed introductory programming. In: 2014 IEEE International conference on teaching, assessment and learning for engineering (TALE) 2014 Dec 8, pp 55–62
Toma L, Vahrenhold J (2018) Self-efficacy, cognitive load, and emotional reactions in collaborative algorithms labs—a case study. In: Proceedings of the 2018 ACM conference on international computing education research 2018 Aug 8, pp 1–10
Ishizue R, Sakamoto K, Washizaki H, Fukazawa Y (2018) Student placement and skill ranking predictors for programming classes using class attitude, psychological scales, and code metrics. Res Pract Technol Enhanc Learn 13(1):1–20
Aggarwal I, Woolley AW, Chabris CF, Malone TW (2019) The impact of cognitive style diversity on implicit learning in teams. Front Psychol 10:112
DeTure M (2004) Cognitive style and self-efficacy: predicting student success in online distance education. Am J Distance Educ 18(1):21–38
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Kaur, A., Chahal, K.K. (2023). A Review on the Impact of Cognitive Factors in Introductory Programming. In: Bindhu, V., Tavares, J.M.R.S., Vuppalapati, C. (eds) Proceedings of Fourth International Conference on Communication, Computing and Electronics Systems . Lecture Notes in Electrical Engineering, vol 977. Springer, Singapore. https://doi.org/10.1007/978-981-19-7753-4_77
Download citation
DOI: https://doi.org/10.1007/978-981-19-7753-4_77
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-19-7752-7
Online ISBN: 978-981-19-7753-4
eBook Packages: EngineeringEngineering (R0)