Abstract
In this study, based on quasi-experimental research, was investigated the effects of teaching Python programming language via Blockly tool, which had hybrid interface, on students’ computer programming anxiety, cognitive load level, and achievement. Participants were 90 high school students, 44 of them in experimental group (hybrid interface) and 46 of them in control group (non-hybrid interface). According to results, there was a meaningful difference between programming achievement scores of students in favor of experimental group while there was no difference in terms of computer programming anxiety between groups. Moreover, after 10-week implementation process, students’ anxiety increased in each group. It was found out cognitive load levels of both groups in the first week were higher than final week. Although both weekly and 10-week intrinsic, extraneous, germane, and total cognitive load levels of experimental group were lower than control group, there was no significantly difference between groups. Consequently, it can be said that programming via hybrid interface, using Blockly, has not an effect on students’ computer programming anxiety positively whereas it helps to keep cognitive load at low level and to increase students’ programming success more. It is recommended that considering these results to make computer programming education is more efficient in high schools and administrators encourage the teachers to use programming tool had hybrid interface such as Blockly.
Similar content being viewed by others
Data availability
The datasets generated during this study are not publicly available but data will be provided by the corresponding author upon request.
References
Asai, S., Phuong, D. T. D., Harada, F., & Shimakawa, H. (2019). Predicting cognitive load in acquisition of programming abilities. International Journal of Electrical & Computer Engineering, 9(4), 2088–8708. https://doi.org/10.11591/ijece.v9i4.pp3262-3271.
Ashrov, A., Marron, A., Weiss, G., & Wiener, G. (2015). A use-case for behavioral programming: An architecture in JavaScript and Blockly for interactive applications with cross-cutting scenarios. Science of Computer Programming, 98, 268–292. https://doi.org/10.1016/j.scico.2014.01.017.
Bosch, N., & D’Mello, S. (2017). The affective experience of novice computer programmers. International Journal of Artificial Intelligence in Education, 27(1), 181–206. https://doi.org/10.1007/s40593-015-0069-5.
Bubnó, K., & Takács, V. L. (2017). The mathability of word problems as initial computer programming exercises. In 2017 8th IEEE International Conference on Cognitive Infocommunications (CogInfoCom) (pp. 39–44). IEEE. https://doi.org/10.1109/coginfocom.2017.8268213.
Çakiroğlu, Ü., Suiçmez, S. S., Kurtoğlu, Y. B., Sari, A., Yildiz, S., & Öztürk, M. (2018). Exploring perceived cognitive load in learning programming via scratch. Research in Learning Technology, 26, 1–20. https://doi.org/10.25304/rlt.v26.1888.
Chang, S. E. (2005). Computer anxiety and perception of task complexity in learning programming-related skills. Computers in Human Behavior, 21(5), 713–728. https://doi.org/10.1016/j.chb.2004.02.021.
Chang, T.-W., Hsu, J.-M., & Yu, P.-T. (2011). A comparison of single-and dual-screen environment in programming language: Cognitive loads and learning effects. Journal of Educational Technology & Society, 14(2), 188–200. Retrieved February, 27, 2019. https://www.jstor.org/stable/10.2307/jeductechsoci.14.2.188.
Cheung, K. (1990). Meaningful measurement in the classroom using the Rasch Model: Some exemplars. Retrieved December, 13, 2017 from ERIC database. (ED 326544). https://files.eric.ed.gov/fulltext/ED326544.pdf.
Connolly, C., Murphy, E., & Moore, S. (2007). Second chance learners, supporting adults learning computer programming. In International Conference on Engineering Education (ICEE). Retrieved December, 13, 2017. http://icee2007.dei.uc.pt/proceedings/papers/407.pdf.
Creswell J. W. (2013), Research design: Qualitative, quantitative and mixed method approaches (4th Ed.), Sage Publication. Retrieved Jenuary, 05, 2017. https://us.sagepub.com/en-us/nam/CollegeResearchMethods.
Culic, I., Radovici, A., & Vasilescu, L. M. (2015). Auto-generating Google Blockly visual programming elements for peripheral hardware. In 2015 14th RoEduNet International Conference-Networking in Education and Research (RoEduNet NER) (pp. 94–98). IEEE. Retrieved December, 13, 2017. https://doi.org/10.1109/roedunet.2015.7311975.
Debue, N., & Van De Leemput, C. (2014). What does germane load mean? An empirical contribution to the cognitive load theory. Frontiers in Psychology, 5, 1099. https://doi.org/10.3389/fpsyg.2014.01099.
DeLeeuw, K. E., & Mayer, R. E. (2008). A comparison of three measures of cognitive load: Evidence for separable measures of intrinsic, extraneous, and germane load. Journal of Educational Psychology, 100(1), 223. https://doi.org/10.1037/0022-0663.100.1.223.
Demir, F. (2015). The effect of different usage of the educational programming language in programming education on the programming anxiety and achievement. (Doctoral Dissertation). Retrieved December, 13, 2017 from Council of Higher Education database in Turkey. (Thesis No. 429631). https://tez.yok.gov.tr/UlusalTezMerkezi/tezSorguSonucYeni.jsp.
Doolittle, P. E., McNeill, A. L., Terry, K. P., & Scheer, S. B. (2005). Multimedia, cognitive load and pedagogy. Interactive Multimedia in Education and Training, 184–212. https://doi.org/10.4018/978-1-59140-393-7.ch010.
Field, A. (2009). Discovering statistics using SPSS. (3rd). Sage. Retrieved January, 05, 2017. https://us.sagepub.com/en-us/nam/CollegeResearchMethods.
Fraser, N. (2015). Ten things we've learned from Blockly. In 2015 IEEE Blocks and Beyond Workshop (Blocks and Beyond) (pp. 49–50). IEEE. https://doi.org/10.1109/blocks.2015.7369000.
Freeman, S. F., Jaeger, B. K., & Brougham, J. C. (2004). Pair programming: More learning and less anxiety in a first programming course. Age, 8, 1–9. https://doi.org/10.18260/1-2%2D%2D11728.
Galan, D., Heradio, R., de la Torre, L., Dormido, S., & Esquembre, F. (2017). Conducting online lab experiments with Blockly. IFAC-PapersOnLine, 50(1), 13474–13479. https://doi.org/10.1016/j.ifacol.2017.08.2323.
Garner, S. (2002). Reducing the cognitive load on novice programmers. In Proceedings of ED-MEDIA World Conference on Educational Multimedia, Hypermedia & Telecommunications (pp. 578–583). AACE. Retrieved December, 06, 2019. https://files.eric.ed.gov/fulltext/ED477013.pdf.
Gerjets, P., Scheiter, K., Opfermann, M., Hesse, F. W., & Eysink, T. H. (2009). Learning with hypermedia: The influence of representational formats and different levels of learner control on performance and learning behavior. Computers in Human Behavior, 25(2), 360–370. https://doi.org/10.1016/j.chb.2008.12.015.
Gomes, A., & Mendes, A. J. (2007). Learning to program-difficulties and solutions. In International Conference on Engineering Education (ICEE). Retrieved November, 20, 2018. http://icee2007.dei.uc.pt/proceedings/papers/411.pdf
Gomez, M. J., Moresi, M., & Benotti, L. (2019). Text-based programming in elementary school: A comparative study of programming abilities in children with and without block-based experience. In Proceedings of the Conference on Innovation and Technology in Computer Science Education (pp. 402–408). ACM. https://doi.org/10.1145/3304221.3319734.
Goudouris, C., de Abreu Mol, A. C., Legey, A. P., de Carvalho, P. V. R., Freire, J. L., Martins, B. M. R., & Jatobá, A. (2020). Applying flow-based principles in teaching computer programming to high school students: A semiotic perspective. Education and Information Technologies, 25, 5451–5476. https://doi.org/10.1007/s10639-020-10193-5.
Harms, K. J. (2013). Applying cognitive load theory to generate effective programming tutorials. In 2013 IEEE Symposium on Visual Languages and Human Centric Computing (pp. 179–180). IEEE. https://doi.org/10.1109/vlhcc.2013.6645274.
Jancheski, M. (2017). Improving teaching and learning computer programming in schools through educational software. Olympiads in Informatics, 11, 55–75. https://doi.org/10.15388/ioi.2017.05.
Kalelioğlu, F. (2015). A new way of teaching programming skills to K-12 students: Code. Org. Computers in Human Behavior, 52, 200–210. https://doi.org/10.1016/j.chb.2015.05.047.
Kelleher, C., & Pausch, R. (2005). Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. ACM Computing Surveys (CSUR), 37(2), 83–137. https://doi.org/10.21236/ada457911.
Khamphroo, M., Kwankeo, N., Kaemarungsi, K., & Fukawa, K. (2017). MicroPython-based educational mobile robot for computer coding learning. In 2017 8th International Conference of Information and Communication Technology for Embedded Systems (IC-ICTES) (pp. 1–6). IEEE. https://doi.org/10.1109/ictemsys.2017.7958781.
Mao, D., Wang, F., Wang, Y., & Hao, Z. (2019). Visual and user-defined smart contract designing system based on automatic coding. IEEE Access, 7, 73131–73143. https://doi.org/10.1109/access.2019.2920776.
Mavilidi, M. F., & Zhong, L. (2019). Exploring the development and research focus of cognitive load theory, as described by its founders: Interviewing John Sweller, Fred Paas, and Jeroen van Merriënboer. Educational Psychology Review, 1–10. https://doi.org/10.1007/s10648-019-09463-7.
Mayer, R. E., & Moreno, R. (2003). Nine ways to reduce cognitive load in multimedia learning. Educational Psychologist, 38(1), 43–52. https://doi.org/10.1207/s15326985ep3801_6.
Ministry of National Education [MoNE] (2018). The computer science curriculum (courses 1–2) in Turkey. Retrieved Jenuary, 10, 2018. http://mufredat.meb.gov.tr/ProgramDetay.aspx?PID=335.
Moons, J., & De Backer, C. (2013). The design and pilot evaluation of an interactive learning environment for introductory programming influenced by cognitive load theory and constructivism. Computers & Education, 60(1), 368–384. https://doi.org/10.1016/j.compedu.2012.08.009.
Moreno, R. (2010). Cognitive load theory: More food for thought. Instructional Science, 38(2), 135–141. https://doi.org/10.1007/s11251-009-9122-9.
Noone, M., & Mooney, A. (2018). Visual and textual programming languages: A systematic review of the literature. Journal of Computers in Education, 5(2), 149–174. https://doi.org/10.1007/s40692-018-0101-5.
Owolabi, J., Olanipekun, P., & Iwerima, J. (2014). Mathematics ability and anxiety, computer and programming anxieties, age and gender as determinants of achievement in basic programming. GSTF Journal on Computing (JoC), 3(4), 109–114. https://doi.org/10.7603/s40601-013-0047-4.
Paas, F. G. (1992). Training strategies for attaining transfer of problem-solving skill in statistics: A cognitive-load approach. Journal Oof Educational Psychology, 84, 429–434. https://doi.org/10.1037/0022-0663.84.4.429.
Paas, F. G., & Van Merriënboer, J. J. (1993). The efficiency of instructional conditions: An approach to combine mental effort and performance measures. Human Factors, 35(4), 737–743. https://doi.org/10.1177/001872089303500412.
Paas, F. G., Renkl, A., & Sweller, J. (2004). Cognitive load theory: Instructional implications of the interaction between information structures and cognitive architecture. Instructional Science, 32(1/2), 1–8. https://doi.org/10.1023/b:truc.0000021806.17516.d0.
Pallant, J. (2005). SPSS survival manual: A step by step guide to data analysis using SPSS for Windows (Version 12). Retrieved November, 30, 2017. http://www.academia.dk/BiologiskAntropologi/Epidemiologi/PDF/SPSS_Survival_Manual_Ver12.pdf.
Protzenko, J. (2015). Pushing blocks all the way to C++. in IEEE Blocks and Beyond Workshop, 91–95. https://doi.org/10.1109/blocks.2015.7369010.
Rodríguez-Gil, L., García-Zubia, J., Orduña, P., Villar-Martinez, A., & López-De-Ipiña, D. (2019). New approach for conversational agent definition by non-programmers: A visual domain-specific language. IEEE Access, 7, 5262–5276. https://doi.org/10.1109/access.2018.2883500.
Salleh, S. M., Shukur, Z., & Judi, H. M. (2018). Scaffolding model for efficient programming learning based on cognitive load theory. International Journal of Pure and Applied Mathematics, 118(7 Special Issue), 77–82. Retrieved February, 21, 2019. https://acadpubl.eu/jsi/2018-118-7-9/articles/7/10.pdf.
Sano, Y., & Kagawa, K. (2019). Design of a programming environment for non-procedural programming languages using Blockly. The International Journal of E-Learning and Educational Technologies in the Digital Media (IJEETDM), 5(3), 93–101. https://doi.org/10.17781/p002614.
Seraj, M., Katterfeldt, E. S., Bub, K., Autexier, S., & Drechsler, R. (2019). Scratch and Google Blockly: How girls’ programming skills and attitudes are influenced. In Proceedings of the 19th Koli Calling International Conference on Computing Education Research (pp. 1–10). ACM. https://doi.org/10.1145/3364510.3364515.
Stachel, J., Marghitu, D., Brahim, T. B., Sims, R., Reynolds, L., & Czelusniak, V. (2013). Managing cognitive load in introductory programming courses: A cognitive aware scaffolding tool. Journal of Integrated Design and Process Science, 17(1), 37–54. https://doi.org/10.3233/jid-2013-0004.
Sweller, J. (2010). Element interactivity and intrinsic, extraneous, and germane cognitive load. Educational Psychology Review, 22(2), 123–138. https://doi.org/10.1007/s10648-010-9128-5.
Tamilias, A. G., Themelis, T. J., Karvounidis, T., Garofalaki, Z., & Kallergis, D. (2017). B@ SE: Blocks for @rduino in the students’ educational process. In 2017 IEEE Global Engineering Education Conference (EDUCON) (pp. 910–915). https://doi.org/10.1109/educon.2017.7942956.
Tsai, C. Y. (2019). Improving students' understanding of basic programming concepts through visual programming language: The role of self-efficacy. Computers in Human Behavior. https://doi.org/10.1016/j.chb.2018.11.038.
Tuomi, P., Multisilta, J., Saarikoski, P., & Suominen, J. (2018). Coding skills as a success factor for a society. Education and Information Technologies, 23(1), 419–434. https://doi.org/10.1007/s10639-017-9611-4.
Van Merriënboer, J. J., & Sweller, J. (2005). Cognitive load theory and complex learning: Recent developments and future directions. Educational Psychology Review, 17(2), 147–177. https://doi.org/10.1007/s10648-005-3951-0.
Weintrop, D., & Wilensky, U. (2017). Between a block and a typeface: Designing and evaluating hybrid programming environments. In Proceedings of the 2017 International Conference on Interaction Design and Children (pp. 183–192). ACM. https://doi.org/10.1145/3078072.3079715.
Weintrop, D., & Wilensky, U. (2018). How block-based, text-based, and hybrid block/text modalities shape novice programming practices. International Journal of Child-Computer Interaction, 17, 83–92. https://doi.org/10.1016/j.ijcci.2018.04.005.
Weintrop, D., & Wilensky, U. (2019). Transitioning from introductory block-based and text-based environments to professional programming languages in high school computer science classrooms. Computers & Education, 142(103646), 1–17. https://doi.org/10.1016/j.compedu.2019.103646.
Wu, W. Y., Chang, C. K., & He, Y. Y. (2010). Using Scratch as game-based learning tool to reduce learning anxiety in programming course. In Proceedings of the Global Learn (pp. 1845–1852). AACE. https://www.learntechlib.org/p/34383/.
Yiğit, M. F. (2016). Investigating the effect of instruction through visual programming environment on students' learning computer programming and attitudes toward programming (Master's Thesis). Retrieved Retrieved Jenuary, 09, 2018 from Council of Higher Education database in Turkey. (Thesis No. 442990). https://tez.yok.gov.tr/UlusalTezMerkezi/tezSorguSonucYeni.jsp.
Yılmaz, M. (2012). Effect of the use of multimedia course materials (prepared in accordance with multimedia design principles and delivered via learning management system-moodle) on higher education student?s cognitive load and success in the C# programming course. (Master's Thesis). Retrieved December, 13, 2017 from Council of Higher Education database in Turkey. (Thesis No. 344965). https://tez.yok.gov.tr/UlusalTezMerkezi/tezSorguSonucYeni.jsp.
Yousoof, M., Sapiyan, M., & Kamaluddin, K. (2006). Reducing cognitive load in learning computer programming. Transactions on Engineering, Computing and Technology, 12, 259–262. Retrieved Jenuary, 09, 2018. https://publications.waset.org/487/reducing-cognitive-load-in-learning-computer-programming.
Yukselturk, E., & Altiok, S. (2017). An investigation of the effects of programming with scratch on the preservice IT teachers’ self-efficacy perceptions and attitudes towards computer programming. British Journal of Educational Technology, 48(3), 789–801. https://doi.org/10.1111/bjet.12453.
Acknowledgements
This study was derived from a part of the first author’s Master’s Thesis and organized by under the supervision second author. Retrieved from Council of Higher Education database in Turkey. (Thesis No. 551146)
Author information
Authors and Affiliations
Contributions
All authors certify to participate sufficiently in this study to take public responsibility for the content, including participation in the concept, design, analysis, writing, or revision of the manuscript.
Corresponding author
Ethics declarations
Ethical approval
All procedures performed in studies involving human participants were in accordance with the ethical standards of the institutional and/or national research committee and with the 1964 Helsinki declaration and its later amendments or comparable ethical standards. Ethics committee approval was received for this study from Ministry of National Education in Turkey (Approval Date: May 15, 2018; Approval Number: 98057890- 605.01-E.9496638), and from the Ethics Committee of Atatürk University Graduate School of Educational Sciences (Approval Date: May 23, 2018; Approval Number: 88179374-300-E.1800159222).
Informed consent
Informed consent was obtained from all individual participants included in the study. Their names and the collected data were remained confidential.
Disclosure of potential conflicts of interest
The authors declare that they have no conflict of interest.
Funding
The authors received no specific funding for this work.
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
Unal, A., Topu, F.B. Effects of teaching a computer programming language via hybrid interface on anxiety, cognitive load level and achievement of high school students. Educ Inf Technol 26, 5291–5309 (2021). https://doi.org/10.1007/s10639-021-10536-w
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10639-021-10536-w