Explicit Instruction-based Methodology for Teaching Introductory Computer Programming

PDF (839KB), PP.1-16

Views: 0 Downloads: 0

Author(s)

Alain Kabo Mbiada 1,* Bassey Isong 1

1. Department of Computer Science, North-West University, Mafikeng, South Africa

* Corresponding author.

DOI: https://doi.org/10.5815/ijmecs.2025.01.01

Received: 29 May 2024 / Revised: 26 Jun. 2024 / Accepted: 15 Aug. 2024 / Published: 8 Feb. 2025

Index Terms

Computer Programming, Teaching Methodology, Explicit Instruction, Student Motivation, Student Engagement

Abstract

Non-computing students often encounter greater challenges in programming courses compared to their computing counterparts, primarily stemming from a lack of motivation in the subject. Motivation plays a pivotal role in the success of introductory programming (IP) modules, with intrinsically and extrinsically motivated students exhibiting greater enjoyment and engagement in learning activities. While numerous studies have attempted to enhance motivation in IP modules, most have focused on computing students which is influenced lar gely by the constructivist theory. This paper addresses this gap by proposing a cognitive-based teaching framework aimed at bolstering motivation among non-computing students. The proposed approach employs the Explicit Instruction paradigm, where the instructor first designs learning strategies and provides students with detailed explanations, demonstrations, examples, and non-examples. This enables the students to apply the strategies in groups, practice with feedback, and finally individually. The effectiveness of this approach was assessed using first-year students at two universities, one in South Africa and the other in Cameroon. We collected student motivation data using a quantitative questionnaire post-experiment. The results indicate that the proposed teaching method had a positive impact on participant motivation in terms of attendance, perceived relevance, confidence, and satisfaction. However, the specific degree of improvement varied among the participants.

Cite This Paper

Alain Kabo Mbiada, Bassey Isong, "Explicit Instruction-based Methodology for Teaching Introductory Computer Programming", International Journal of Modern Education and Computer Science(IJMECS), Vol.17, No.1, pp. 1-16, 2025. DOI:10.5815/ijmecs.2025.01.01

Reference

[1]A. Mbiada et al., ‘A Comparative Study of Computer Programming Challenges of Computing and Non-Computing First-Year Students’, Indonesia. J. Comput. Sci., vol. 12, no. 4, 2023.
[2]E. Hong et al., ‘Effects of explicit instructions, metacognition, and motivation on creative performance’, Creat. Res. J., vol. 28, no. 1, pp. 33–45, 2016.
[3]A. L. Ribeiro et al., ‘Análise da Motivação em um Estudo Integrado de Programação Baseado em PBL’, in Anais do XXVI Workshop sobre Educação em Computação, 2018.
[4]K. Longi and others, ‘Exploring factors that affect performance on introductory programming courses’, 2016.
[5]A. Forte and M. Guzdial, ‘Computers for communication, not calculation: Media as a motivation and context for learning’, in 37th Annual Hawaii International Conference on System Sciences, 2004. Proceedings of the, 2004, pp. 10-pp.
[6]O. S. Pabón and L. M. Villegas, ‘Fostering motivation and improving student performance in an introductory programming course: An integrated teaching approach’, Rev. EIA, vol. 16, no. 31, pp. 65–76, 2019.
[7]R. Horváth and S. Javorskỳ, ‘New teaching model for Java programming subjects’, Procedia-Soc. Behav. Sci., vol. 116, pp. 5188–5193, 2014.
[8]H. C. Jiau et al., ‘Enhancing self-motivation in learning programming using game-based simulation and metrics’, IEEE Trans. Educ., vol. 52, no. 4, pp. 555–562, 2009.
[9]S. M. Souza and R. A. Bittencourt, ‘Motivation and engagement with PBL in an introductory programming course’, in 2019 IEEE Frontiers in Education Conference (FIE), 2019, pp. 1–9.
[10]B. L. Santana et al., ‘Motivation of engineering students with a mixed-contexts approach to introductory programming’, in 2018 IEEE Frontiers in Education Conference (FIE), 2018, pp. 1–9.
[11]L. Facey-Shaw et al., ‘Do badges affect intrinsic motivation in introductory programming students?’, Simul. Gaming, vol. 51, no. 1, pp. 33–54, 2020.
[12]A. Carbonaro, ‘Good practices to influence engagement and learning outcomes on a traditional introductory programming course’, Interact. Learn. Environ., vol. 27, no. 7, pp. 919–926, 2019.
[13]P. A. Kirschner et al., ‘Why minimal guidance during instruction does not work: An analysis of the failure of constructivist, discovery, problem-based, experiential, and inquiry-based teaching’, Educ. Psychol., vol. 41, no. 2, pp. 75–86, 2006.
[14]A. K. Mbiada et al., ‘Introductory Computer Programming Teaching and Learning Approaches: Review’, in 2022 International Conference on Electrical, Computer and Energy Technologies (ICECET), 2022[Online]. Availablehttps://doi.org/10.1109%2Ficecet55527.2022.9873427.
[15]C. Gauthier et al., ‘L’enseignement explicite’, 2007.
[16]A. L. Archer and C. A. Hughes, ‘Explicit Instruction: Effective and efficient teaching (what works for special-needs Learners)’, J. Spec. Educ., vol. 36, no. 4, pp. 186–205, 2011.
[17]J. R. Hollingsworth and S. E. Ybarra, Explicit direct instruction (EDI): The power of the well-crafted, well-taught lesson. Corwin Press, 2009.
[18]J. M. Keller, ‘Development and use of the ARCS model of instructional design’, J. Instr. Dev., vol. 10, no. 3, pp. 2–10, 1987.
[19]C. Iriarte and S. Bayona, ‘IT projects success factors: a literature review’, Int. J. Inf. Syst. Proj. Manag., vol. 8, no. 2, pp. 49–78, 2020.
[20]R. M. Ryan and E. L. Deci, ‘Intrinsic and extrinsic motivations: Classic definitions and new directions’, Contemp. Educ. Psychol., vol. 25, no. 1, pp. 54–67, 2000.
[21]G. Nel and L. Nel, ‘Motivational value of code. Org’s code studio tutorials in an undergraduate programming course’, in ICT Education: 47th Annual Conference of the Southern African Computer Lecturers’ Association, SACLA 2018, Gordon’s Bay, South Africa, June 18–20, 2018, Revised Selected Papers 47, 2019, pp. 173–188.
[22]D. Bédard et al., ‘Problem-based and project-based learning in engineering and medicine: determinants of students’ engagement and persistance’, Interdiscip. J. Probl.-Based Learn., vol. 6, no. 2, pp. 7–30, 2012.
[23]W. B. Schaufeli et al., ‘Utrecht work engagement scale-9’, Educ. Psychol. Meas., 2003.
[24]S. Wiedenbeck et al., ‘Factors affecting course outcomes in introductory programming.’, in PPIG, 2004, p. 11.
[25]C. O’Malley and A. Aggarwal, ‘Evaluating the Use and Effectiveness of Ungraded Practice Problems in an Introductory Programming Course’, in Proceedings of the Twenty-Second Australasian Computing Education Conference, 2020, pp. 177–184.
[26]G. Sharma, ‘Computer Programming Comp103: Who Does Better?’, 2019.
[27]K. S. Taber, Modeling learners and learning in science education. Springer, 2013.
[28]Y. Qian et al., ‘Teachers’ perceptions of student misconceptions in introductory programming’, J. Educ. Comput. Res., vol. 58, no. 2, pp. 364–397, 2020.
[29]A. K. Veerasamy et al., ‘Identifying novice student programming misconceptions and errors from summative assessments’, J. Educ. Technol. Syst., vol. 45, no. 1, pp. 50–73, 2016.
[30]Ž. Žanko et al., ‘Mediated transfer: impact on programming misconceptions’, J. Comput. Educ., pp. 1–26, 2022.
[31]F. Johnson et al., ‘Experience Report: Identifying Unexpected Programming Misconceptions with a Computer Systems Approach’, in Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 1, 2022, pp. 325–330.
[32]F. Johnson et al., ‘Analysis of student misconceptions using Python as an introductory programming language’, in Proceedings of the 4th Conference on Computing Education Practice 2020, 2020, pp. 1–4.
[33]Ž. Žanko et al., ‘Analysis of school students’ misconceptions about basic programming concepts’, J. Comput. Assist. Learn., vol. 38, no. 3, pp. 719–730, 2022.
[34]A. Altadmri and N. C. Brown, ‘37 million compilations: Investigating novice programming mistakes in large-scale student data’, in Proceedings of the 46th ACM Technical Symposium on Computer Science Education, 2015, pp. 522–527.
[35]C. Taylor et al., ‘Computer science concept inventories: past and future’, Comput. Sci. Educ., vol. 24, no. 4, pp. 253–276, 2014.
[36]G. L. Herman, ‘The development of a digital logic concept inventory’, PhD Thesis, University of Illinois at Urbana-Champaign, 2011.
[37]J. Libarkin, ‘Concept inventories in higher education science’, in BOSE Conf., 2008.
[38][V. L. Almstrum et al., ‘Concept inventories in computer science for the topic discrete mathematics’, in ACM SIGCSE Bulletin, 2006, vol. 38, pp. 132–145.
[39]D. C. Leonard, Learning theories: A to Z. Bloomsbury Publishing USA, 2002.
[40]J. Piaget, ‘Part I: Cognitive Development in Children–Piaget Development and Learning.’, J. Res. Sci. Teach., vol. 40, 2003.
[41]J. M. Fletcher et al., Learning disabilities: From identification to intervention. Guilford Publications, 2018.
[42]M. Pressley and K. R. Harris, ‘Cognitive strategies instruction: From basic research to classroom instruction’, J. Educ., vol. 189, no. 1–2, pp. 77–94, 2009.
[43]M. Bocquillon et al., ‘Faut-il utiliser l’enseignement explicite en tout temps? Non... mais oui!’, Apprendre Enseigner Aujourd’hui, vol. 8, no. 2, pp. 25–28, 2019.
[44]Newmark, ‘Ten principles for great explicit teaching’. [Online]. Availablehttps://bennewmark.wordpress.com/2017/10/07/ten-principles-for-great-explict-teaching/.
[45]M. Rogers et al., ‘Exploring personalization of gamification in an introductory programming course’, in Proceedings of the 52nd ACM Technical Symposium on Computer Science Education, 2021, pp. 1121–1127.
[46]R. Smiderle et al., ‘impac’, Smart Learn. Environ., vol. 7, no. 1, pp. 1–11, 2020.
[47]B. Hartanto et al., ‘Enhancing the student engagement in an introductory programming: a holistic approach in improving the student grade in the informatics department of the University of Surabaya’, Dalam Commun. Comput. Inf. Sci., vol. 516, pp. 493–504, 2015.
[48]R. A. Alturki and others, ‘Measuring and improving student performance in an introductory programming course’, Inform. Educ.- Int. J., vol. 15, no. 2, pp. 183–204, 2016.
[49]J. Kasurinen and U. Nikula, ‘Lower dropout rates and better grades through revised course infrastructure’, in Proceedings of the 10th International Conference on Computers and Advanced Technology in Education, 2007, pp. 152–157.
[50]K. Kwon, ‘Novice programmer's misconception of programming reflected on problem-solving plans’, Int. J. Comput. Sci. Educ. Sch., vol. 1, no. 4, pp. 14–24, 2017.
[51]R. M. Gagne, ‘Instruction and the conditions of learning’, Psychol. Sch. Learn. Views Learn., vol. 1, pp. 153–175, 1974.
[52]T. H. Spangsberg and M. Brynskov, ‘Code-labelling: A teaching activity encouraging deep learning in a non-STEM introductory programming course’, in 2017 12th International Conference on Computer Science and Education (ICCSE), 2017, pp. 95–100.
[53]F. J. Gallego-Durán et al., ‘A low-level approach to improve programming learning’, Univers. Access Inf. Soc., pp. 1–15, 2020.
[54]S. H. Edwards et al., ‘The Relationship Between Voluntary Practice of Short Programming Exercises and Exam Performance’, in Proceedings of the ACM Conference on Global Computing Education, 2019, pp. 113–119.
[55]B. Pasian, ‘The Constructive Research Approach: Problem Solving for Complex Projects’, in Designs, Methods and Practices for Research of Project Management, Routledge, 2016, pp. 125–136.
[56]K. Daungcharone et al., ‘Smart Learning Environment to Augment the Learners’ Programming Skills’, in 2020 Joint International Conference on Digital Arts, Media and Technology with ECTI Northern Section Conference on Electrical, Electronics, Computer and Telecommunications Engineering (ECTI DAMT & NCON), 2020, pp. 293–297.
[57]W. Huang et al., ‘A preliminary validation of Attention, Relevance, Confidence and Satisfaction model-based Instructional Material Motivational Survey in a computer-based tutorial setting’, Br. J. Educ. Technol., vol. 37, no. 2, pp. 243–259, 2006.
[58]K. Lokesh, Methodology of educational research. Vikas Publishing House, 1984.
[59]S. I. Malik et al., ‘Promoting Algorithmic Thinking in an Introductory Programming Course.’, Int. J. Emerg. Technol. Learn., vol. 14, no. 1, 2019.
[60]B. Isong, ‘A Methodology for Teaching Computer Programming: first year students’ perspective’, Int. J. Mod. Educ. Comput. Sci., vol. 6, no. 9, p. 15, 2014.
[61]S. I. Malik and J. Coldwell-Neilson, ‘A model for teaching an introductory programming course using ADRI’, Educ. Inf. Technol., vol. 22, no. 3, pp. 1089–1120, 2017.