Abstract
As a novice, learning computer programming is challenging. It requires learners to be inquisitive and acquire skills to analyze problems to get to solutions critically. Unfortunately, students drop out of programming courses because students think that programming is difficult to understand. The student's understanding of the problem definition is one of the drawbacks that hinder them from accepting to solve problems. In addition to that, students also find the terminologies difficult to grasp. This study aims to determine whether visualization, interactivity, affective teaching, and the use of home language improve students' understanding. In this study, an application is designed to allow students to learn coding and their pre and the post-exam result was analyzed. The application incorporates animation, interaction, and examples in the home language. The result was tested at a 95% Confidence Level. It was found that the use of visualization and home language in teaching improves students' results and enhances their critical thinking and problem-solving skills.
Similar content being viewed by others
Availability of data and material
The datasets generated during and/or analysed during the current study are available from the corresponding author on reasonable request.
Code availability
The application was developed in Adobe Flash with ActionScript 3.0 which is available from the corresponding author on reasonable request.
References
Anyango, J. T. & Suleman, H., (2018). Teaching programming in Kenya and South Africa: What is difficult and is it universal?. Finland, Association for Computing Machinery (pp. 1–2).
Azmi, S., Iahad, N. A., & Ahmad, N. (2016). Attracting students’ engagement in programming courses with gamification (pp. 112–115). IEEE.
Baloyi, L. L., Ojo, S. O., & Wyk, E. V. A. (2017). Design and development of an interactive multimedia simulation for augmenting the teaching and learning of programming concepts (pp. 19–28). ERIC.
Bhatti, S., Dewani, A., Maqbool, S., & Memon, M. A. (2019). A web based approach for teaching and learning programming concepts at middle school level. I.J Modern Education and Computer Science, 11, 46–53.
Bovell, R. (2018). A significant number of students quit their programming education, find out why before you sign up for a program and suffer the same fate, s.l.: s.n.
Byrne, M. D., Catrambone, R., & Stasko, J. T. (1999). Evaluating animations as student aids in learning computer algorithms. Computer and Education, 33, 253–278.
Çakıroglu, Ü., Atabas, S., Sarıyalçınkaya, D., & Öner, İE. (2020). Learning programming online: Influences of various types of feedback on programming performances. International Journal of Computer Science Education in Schools, 3(3), 3–18.
Carlisle, M. C. (2010). Using You Tube to enhance student class preparation in an introductory Java course. Proceedings of the 41st ACM technical symposium on Computer science education, pp. 470–474.
Changing Minds.org (n.d). Active learning. http://changingminds.org/explanations/learning/active_learning.htm. Accessed 19 October 2016
Chen, C. H., & Guo, P. J. (2019). Improv: Teaching programming at scale via live coding (pp. 1–10). Association for Computing Machinery New York.
Chiou, C.-C., Tien, L.-C., & Lee, L.-T. (2015). Effects on learning of multimedia animation combined with multidimensional concept maps (pp. 211–223). Elsevier.
Davenport, C. E. (2018). Evolution in student perceptions of a flipped classroom in a computer programming course. Journal of College Science Teaching, 047, 30–35.
Dawar, D., & Murphy, M. (2020). An assignment a day scaffolded learning approach for teaching introductory computer programming. Information Systems Education Journal, 18(4), 59–73.
Daxx (2020). Daxx. https://www.daxx.com/blog/development-trends/nordics-tech-talent-shortage. Accessed 24 January 2021
Falk, N. L. (2016). Infographic development by accelerated bachelor of science in nursing students: An innovative technology-based approach to public health education. The Research Journal of the National League of Nursing, 37, 299–301.
Giannakoulas, A., & Xinogalos, S. (2020). A review of educational games for teaching programming to primary school students. In: Handbook of research on tools for teaching computational thinking in P-12 education (pp. 1–30). IGI Global.
Gurer, M. D., Cetin, I., & Top, E. (2019). Factors affecting students’ attitudes toward computer programming. Informatics in Education, 18, 281–296.
Gutierrez, K. (2014). Studies confirm the power of visuals in eLearning. http://info.shiftelearning.com/blog/bid/350326/Studies-Confirm-the-Power-of-Visuals-in-eLearning. Accessed 19 October 2016
Hafiz, M., & Farik, M. (2016). Effectivness of teaching and learning mathematics using children’s home language and cultural tools. International Journal of Scientific and Technology Research, 5, 122–127.
Karuović, D., et al. (2020). Students' habits and competencies for creating virtual Learning Environments. Computer Applications in Engineering Education 1–19.
Kioko, A. (2015). British Council. [Online] Available at: https://www.britishcouncil.org/voices-magazine/why-schools-should-teach-young-learners-home-language [Accessed 19 October 2016].
Korkmaz, Ö. (2016). The effect of lego mindstorms Ev3 based design activities on students’ attitudes towards learning computer programming, self-efficacy beliefs and levels of academic achievement. Baltic Journal of Modern Computing, 4, 647–660.
Linden, T., & Lederman, R. (2011). Creating visualizations from multimedia building blocks: A simple approach to teaching programming concepts. s.l., s.n., 1–10.
Liu, C.-C., Cheng, Y.-B., & Huang, C.-W. (2011). The effect of simulation games on the learning of computational problem solving. Computers and Education, 57, 1907–1918.
Lund, A. & Lund, M. (2018). Dependent T-Test using SPSS Statistics. [Online] Available at: https://statistics.laerd.com/spss-tutorials/dependent-t-test-using-spss-statistics.php. [Accessed 15 August 2019].
Luxton-Reilly, A. (2016). Learning to program is easy Arequipa Peru (pp. 284–289). Association for Computing Machinery.
Malik, S. I., & Al-Emran, M. (2018). Social factors influence on career choices for female computer science students. iJET, 13, 56–70.
Martínez, L. G., et al. (2018). Using a mobile platform for teaching and learning object oriented programming. IEEE Latin America Transactions, 16, 1825–1830.
Mehmood, E., Abid, A., Farooq, M. S., & Nawaz, N. A. (2020). Curriculum, teaching and learning, and assessments for introductory programming course. IEEE Access, 8, 125961–125981.
Melnichuk, A. (2019). Software engineer shortage in the world. https://ncube.com/blog/software-engineer-shortage#:~:text=It's%20estimated%20that%20another%20500%2C000,only%20400%2C000%20software%20developer%20graduates. Accessed 24 January 2021
Merkouris, A., Chorianopoulos, K., & Kameas, A. (2017). Teaching programming in secondary education through embodied computing platforms: robotics and wearables. ACM Transactions on Computing Education, 17, 1–22.
Miljanovic, M. A., & Bradbury, J. S. (2018). A review of serious games for programming (pp. 204–216). Springer.
Mladenović, M., Žanko, Ž, & Čuvić, A. M. (2021). The impact of using program visualization techniques onlearning basic programming concepts at the K–12 level. Computer Applications in Engineering Education, 29, 145–159.
Moreno, A., Joy, M., & Sutinen, E. (2013). Roles of animation tools in understanding programming concepts. Journal of Educational Multimedia and Hypermedia, 22, 165–184.
Niesche, R. (2009). The use of home language in the mathematics classroom. Palmerston North, NZ, MERGA (pp. 704–707).
Oyelere, S. S., Suhonen, J., Wajiga, G. M., & Sutinen, E. (2018). Design, development, and evaluation of a mobile learning application for computing education. Education and Information Technologies, 23, 467–495.
Paige, K., Bentley, B., & Dobson, S. (2016). Slowmation: A twenty-first century educational tool for science and mathematics pre-service teachers. Australian Journal of Teacher Education, 41, 1–15.
Papadakis, S. (2019). Evaluating the efficiency of two programming environments in shaping novices’ attitudes, perceptions, beliefs and knowledge in programming: a comparison between Scratch and App Inventor. International Journal of Teaching and Case Studies, 10, 31–52.
Papadakis, S. (2020). Evaluating a game-development approach to teach introductory programming concepts in secondary education. International Journal of Technology Enhanced Learning, 12(2), 127–145.
Perez, A. L., & Alieto, E. (2018). Change of “Tongue” from english to a local language: A correlation of mother tongue proficiency and mathematics achievement. The Asian ESP Journal, 14(72), 132–150.
Prasad, A., & Chaudhary, K. (2021). Interactive animation and affective teaching and learning in programming courses. Advances in Computer (pp. 613–623). Springer.
Prasad, A., & Farik, M. (2015). integration of innovative technologies and affective teaching & learning in programming courses. International Journal of Scientific and Technology Research, 4, 313–317.
Roque-Hernández, R. V., Díaz-Roldán, J. L., López-Mendoza, A., & Salazar-Hernández, R. (2021). Instructor presence, interactive tools, student engagement, and satisfaction in online education during the COVID-19 Mexican lockdown. Interactive Learning Environments.
Sabarinath, R., & Quek, C. L. G. (2020). A case study investigating programming students’ peer review of codes and their perceptions of the online learning environment. Education and Information Technologies, 25, 3553–3575.
Salahli, M. A., et al. (2017). One mobile application for the development of programming skills of secondary school students. Procedia Computer Science, 120, 502–508.
Seralidou, E., & Douligeris, C. (2020). Learning programming by creating games through the use of structured activities in secondary education in Greece. Education and Information Technologies, 26, 859–898.
Shen, R., & Lee, M. J. (2020). Learners’ perspectives on learning programming from interactive computer tutors in a MOOC (pp. 1–5). IEEE.
Smiciklas, M. (2012). Power of infographics, the: using pictures to communicate and connect with your audiences. Que Publishing.
Sommerville, I. (2011). Software engineering. Pearson Education.
Stockwell, B. R., Stockwell, M. S., Cennamo, M., & Jiang, E. (2015). Blended learning improves science education (pp. 933–936). Elsevier.
Suh, S., Lee, M., Xia, G., & Law, E. (2020). Coding strip: A pedagogical tool for teaching and learning programming concepts through comics. IEEE Xplore, 1–10.
Swacha, J., Queirós, R., & Paiva, J. C. (2019). Towards a framework for gamified programming education (pp. 144–149). IEEE.
U.S Bureau of labor statistics. (2020). Software Developers. https://www.bls.gov/ooh/computer-and-information-technology/software-developers.htm#tab-6. Accessed 24 January 2021
Vanichvasin, P. (2013). Enhancing the quality of learning through the use of infographics as visual communication tool and learning tool (pp. 135–142). Offset Plus Co Ltd.
Visual teaching alliance (n.d.) Why Visual teaching?. http://visualteachingalliance.com/. Accessed 6 October 2016
White, S. K. (2020). CIO United States. https://www.cio.com/article/3235944/hiring-the-most-in-demand-tech-jobs-for-2021.html. Accessed 24 January 2021
Woei, L. S., Othman, I. H., & Man, C. K. (2015). Learning programming using objects-first approach through folktales. Jurnal Teknologi, 75, 47–53.
Acknowledgements
The partial data in the result was presented at the 4th International Conference on Computer, Communication and Computational Sciences held on 11th and 12th of October in Bangkok, Thailand.
Author information
Authors and Affiliations
Contributions
Not applicable.
Corresponding author
Ethics declarations
Ethics approval
All applicable national, and/or institutional guidelines for the care and use of humans were followed.
Consent to participate
Informed consent was obtained from all individual participants included in the study.
Consent for publication
I, Alvin Prasad, give my consent for the publication of the research to be published in this Journal.
Conflict of interest
I have no potential conflict of interest pertaining to this submission.
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Prasad, A., Chaudhary, K. & Sharma, B. Programming skills: Visualization, interaction, home language and problem solving. Educ Inf Technol 27, 3197–3223 (2022). https://doi.org/10.1007/s10639-021-10692-z
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10639-021-10692-z