Adoption of Visual Programming Environments in Programming Learning

Qais Batiha, Noraidah Sahari, Nazatul Aini, Noorazean Mohd


Programming education is gradually integrated into the school and university curricula. Accordingly, studies in the Computer Science education field have highlighted issues such as high failure rate, memorizing, bugs, the complexity of concepts, motivation, and uconfidence faced by students when learning a programming language, specifically object-oriented programming. These issues require specific learning environments to reach the target audience. Therefore, the objectives of this article are to identify the issues based on previous work and to verify those issues by interview feedback conducted with lecturers in the Department of Computer Science and Information Technology at the Faculty of Information Science and Technology, Universiti Kebangsaan Malaysia. Following that, the theoretical principles underpinning environments were studied to explore the suitability of these environments for university education based on the identified issues. The investigated environments included Turtle Graphics, Alice, BlueJ, Greenfoot, Snap!, and NetsBlox, a co-located collaborative block-based programming, and OOPP were studied and used to teach and learn object-oriented programming. Based on the interviews with experts, we found that students still had issues when learning programming, which involved memorizing, bugs, the complexity of concepts, unconfidence, communicating with students during a calamity (distance learning), and a number of students in labs. We conclude that these environments focus on some issues and ignore others, and no single environment satisfies all these issues, which causes students to be demotivated. In a further study, all these issues will be addressed by developing a learning environment, and its effectiveness shall be tested.


Block-based programming; collaborative learning; object-oriented programming (OOP); syntax error; visual programming languages (VPLs).

Full Text:



R. Queirós, M. Pinto, and T. Terroso, "Computer Programming Education in Portuguese Universities," OpenAccess Ser. Informatics, vol. 81, no. 21, pp. 1–11, 2020, doi: 10.4230/OASIcs.ICPEC.2020.21.

C. S. Cheah, "Factors contributing to the difficulties in teaching and learning of computer programming: A literature review," Contemp. Educ. Technol., vol. 12, no. 2, pp. 1–14, 2020, doi: 10.30935/cedtech/8247.

M. Aissa, M. Al-Kalbani, S. Al-Hatali, and A. BinTouq, "Novice learning programming languages in omani higher education institution (Nizwa University) issues, challenges and solutions," in Sustainable Development and Social Responsibility—Volume 2, Springer, 2020, pp. 143–148.

C. Chibaya, "A Metaphor-Based Approach for Introducing Programming Concepts," in Proceedings - 2019 International Multidisciplinary Information Technology and Engineering Conference, IMITEC 2019, 2019, pp. 1–8, doi: 10.1109/IMITEC45504.2019.9015888.

T. W. Koet and A. Abdul Aziz, "Teachers' and Students' Perceptions towards Distance Learning during the Covid-19 Pandemic: A Systematic Review," Int. J. Acad. Res. Progress. Educ. Dev., vol. 10, no. 3, pp. 531–562, 2021, doi: 10.6007/ijarped/v10-i3/11005.

K. V. Zacharis and A. D. Niros, "Computational Thinking," Commun. ACM, vol. 49, no. 3, pp. 140–158, 2020, doi: 10.4018/978-1-7998-4576-8.ch006.

R. Hawariyah, B. Z. Halimah, A. Azlina, and M. A. Nazlena, "Student' s Difficulties in Learning Programming," Adv. J. Tech. Vocat. Educ., vol. 2, no. 3, pp. 40–43, 2018.

S. Hodges, S. Sentance, J. Finney, and T. Ball, "Physical Computing: A Key Element of Modern Computer Science Education," Computer (Long. Beach. Calif)., vol. 53, no. 4, pp. 20–30, 2020, doi: 10.1109/MC.2019.2935058.

A. V. Robins, "Novice Programmers and Introductory Programming," Cambridge Handb. Comput. Educ. Res., pp. 327–376, 2019, doi: 10.1017/9781108654555.013.

P. O. Jegede, E. A. Olajubu, A. O. Ejidokun, and I. O. Elesemoyo, "Concept-based analysis of java programming errors among low, average and high achieving novice programmers," J. Inf. Technol. Educ. Innov. Pract., vol. 18, no. June, pp. 49–59, 2019, doi: 10.28945/4322.

J. Cuny, "Transforming High School Computing: A Compelling Need, A National Effort." 2012, doi:

N. C. C. C. Brown and G. Wilson, "Ten quick tips for teaching programming," PLoS Comput. Biol., vol. 14, no. 4, p. e1006023, 2018, doi: 10.1371/journal.pcbi.1006023.

N. O. Anwar, H. Okumura, T. Widiyaningtyas, and U. Pujianto, "NemU: Design and improvement of visual programming environment as learning support system on basic programming subjects," in ACM International Conference Proceeding Series, 2019, vol. Part F1483, pp. 54–61, doi: 10.1145/3323771.3323788.

K. J. Mackin, "Turtle graphics for early Java programming education," Artif. Life Robot., vol. 0, no. 0, p. 0, 2019, doi: 10.1007/s10015-019-00528-y.

N. Fraser, "Google Blockly: A Web-based Visual Programming Editor," Google, 2013.

R. Shen, D. Y. Wohn, and M. J. Lee, "Comparison of Learning Programming between Interactive Computer Tutors and Human Teachers," in CompEd 2019 - Proceedings of the ACM Conference on Global Computing Education, 2019, pp. 2–8, doi: 10.1145/3300115.3309506.

A. Sartori and C. Schlette, "Visual Programming of a Human-Machine Interface for a Multi-Robot Support System," in 2021 4th IEEE International Conference on Industrial Cyber-Physical Systems (ICPS), 2021, pp. 387–392, doi: 10.1109/icps49255.2021.9468200.

H. W. Hnin and K. K. Zaw, "Element Fill-in-Blank Problems in Python Programming Learning Assistant System," in 2020 International Conference on Advanced Information Technologies (ICAIT), 2020, pp. 88–93.

A. Adeliyi et al., "Remote Pair Programming," in SIGCSE 2021 - Proceedings of the 52nd ACM Technical Symposium on Computer Science Education, 2021, p. 1289, doi: 10.1145/3408877.3439681.

S. R. Manoharan, T. K. Hua, and F. M. M. Sultan, "A Comparison of Online Learning Challenges Between Young Learners and Adult Learners in ESL Classes During the COVID-19 Pandemic: A Critical Review," Theory Pract. Lang. Stud., vol. 12, no. 1, pp. 28–35, 2022, doi: 10.17507/tpls.1201.04.

M. Mohtar and M. Md Yunus, "A Systematic Review of Online Learning during COVID 19: Students' Motivation, Task Engagement and Acceptance," Arab World English J., no. 2, pp. 202–215, 2022, doi: 10.24093/awej/covid2.13.

S. Xinogalos, M. Satratzemi, and C. Malliarakis, "Microworlds, games, animations, mobile apps, puzzle editors and more: What is important for an introductory programming environment?," Educ. Inf. Technol., vol. 22, no. 1, pp. 145–176, 2017, doi: 10.1007/s10639-015-9433-1.

M. A. Bakar, M. Mukhtar, and F. Khalid, "The development of a visual output approach for programming via the application of cognitive load theory and constructivism," Int. J. Adv. Comput. Sci. Appl., vol. 10, no. 11, pp. 305–312, 2019, doi: 10.14569/IJACSA.2019.0101142.

M. A. Bakar, M. Mukhtar, and F. Khalid, "The effect of turtle graphics approach on students' motivation to learn programming: A case study in a malaysian university," Int. J. Inf. Educ. Technol., vol. 10, no. 4, pp. 290–297, 2020, doi: 10.18178/ijiet.2020.10.4.1378.

J. M. Rodriguez Corral, I. Ruiz-Rube, A. Civit Balcells, J. M. Mota-Macias, A. Morgado-Estevez, and J. M. Dodero, "A study on the suitability of visual languages for non-expert robot programmers," IEEE Access, vol. 7, pp. 17535–17550, 2019, doi: 10.1109/ACCESS.2019.2895913.

M. Krafft, G. Fraser, and N. Walkinshaw, "Motivating Adult Learners by Introducing Programming Concepts with Scratch," in ACM International Conference Proceeding Series, 2020, pp. 22–26, doi: 10.1145/3396802.3396818.

C. Y. Tsai, "Improving students' understanding of basic programming concepts through visual programming language: The role of self-efficacy," Comput. Human Behav., vol. 95, pp. 224–232, 2019, doi: 10.1016/j.chb.2018.11.038.

M. Seraj, E. S. Katterfeldt, K. Bub, S. Autexier, and R. Drechsler, "Scratch and google blockly: How girls' programming skills and attitudes are influenced," in ACM International Conference Proceeding Series, 2019, p. 23, doi: 10.1145/3364510.3364515.

W. C. Hsu and J. Gainsburg, "Hybrid and Non-Hybrid Block-Based Programming Languages in an Introductory College Computer-Science Course," J. Educ. Comput. Res., vol. 59, no. 5, pp. 817–843, 2021, doi: 10.1177/0735633120985108.

D. Weintrop, "Education block-based programming in computer science education," Commun. ACM, vol. 62, no. 8, pp. 22–25, 2019, doi: 10.1145/3341221.

Å. Wiechetek, "Teaching basic of programming with the elements of Scratch - Evaluation of VBA programming course for logistics students," Int. J. Innov. Learn., vol. 28, no. 2, pp. 159–179, 2020, doi: 10.1504/IJIL.2020.108972.

B. Díaz-Lauzurica and D. Moreno-Salinas, "Computational thinking and robotics: A teaching experience in compulsory secondary education with students with high degree of apathy and demotivation," Sustain., vol. 11, no. 18, p. 5109, 2019, doi: 10.3390/su11185109.

L. K. Lee, T. K. Cheung, L. T. Ho, W. H. Yiu, and N. I. Wu, "Learning computational thinking through gamification and collaborative learning," in Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2019, vol. 11546 LNCS, pp. 339–349, doi: 10.1007/978-3-030-21562-0_28.

B. Zhong and T. Li, "Can Pair Learning Improve Students' Troubleshooting Performance in Robotics Education?," J. Educ. Comput. Res., vol. 58, no. 99, pp. 220–248, 2019, doi: 10.1177/0735633119829191.

A. F. Zulfikar et al., "The effectiveness of online learning with facilitation method," Procedia Comput. Sci., vol. 161, pp. 32–40, 2019, doi: 10.1016/j.procs.2019.11.096.

M. Satratzemi, D. Tsompanoudi, S. Xinogalos, and L. Karamitopoulos, "Examining the compatibility of students in distributed pair programming," in Proceedings of the European Conference on e-Learning, ECEL, 2019, vol. 2019-Novem, pp. 510–518, doi: 10.34190/EEL.19.023.

J. Hughes, A. Walshe, B. Law, and B. Murphy, "Remote pair programming," in CSEDU 2020 - Proceedings of the 12th International Conference on Computer Supported Education, 2020, vol. 2, no. Csedu, pp. 476–483, doi: 10.5220/0009582904760483.

Y.-C. Hsu, Y.-H. Ching, J. Callahan, and D. Bullock, "Enhancing STEM Majors' College Trigonometry Learning through Collaborative Mobile Apps Coding," TechTrends, vol. 65, no. 1, pp. 26–37, 2021.

D. Tsompanoudi, M. Satratzemi, S. Xinogalos, and L. Karamitopoulos, "An Empirical Study on Factors related to Distributed Pair Programming," Int. J. Eng. Pedagog., vol. 9, no. 2, pp. 65–81, 2019, doi: 10.3991/ijep.v9i2.9947.

C. M. C. De Oliveira, E. D. Canedo, H. Faria, L. H. V. Amaral, and R. Bonifacio, "Improving Student's Learning and Cooperation Skills Using Coding Dojos (In the Wild!)," in Proceedings - Frontiers in Education Conference, FIE, 2019, vol. 2018-Octob, pp. 1–8, doi: 10.1109/FIE.2018.8659056.

J. Cheng and J. Lei, "A description of students' commenting behaviours in an online blogging activity," E-Learning Digit. Media, vol. 18, no. 2, pp. 209–225, 2021, doi: 10.1177/2042753020954971.

B. Laurel, "Computers as Theater-Laurel, B." Visible Language RISD-Graphic Design Dept 2 College ST, Providence, RI 02903, 1993.

C. Jost and B. Le Pévédic, Designing Evaluations: Researchers' Insights Interview of Five Experts. Springer International Publishing, 2020.

M. Kölling, "Blue, bluej, greenfoot: Designing educational programming environments," in Innovative Methods, User-Friendly Tools, Coding, and Design Approaches in People-Oriented Programming, IGI Global, 2018, pp. 42–87.

A. Ferrari, G. Lombardo, M. Mordonini, A. Poggi, and M. Tomaiuolo, "OOPP: Tame the Design of Simple Object-Oriented Applications with Graphical Blocks," in Lecture Notes of the Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering, LNICST, 2018, vol. 233, pp. 279–288, doi: 10.1007/978-3-319-76111-4_28.

D. Garcia and M. Ball, "Snap! 6, Introducing Hyperblocks!," in Proceedings of the 52nd ACM Technical Symposium on Computer Science Education, 2021, p. 1379.

G. Stein and A. Lédeczi, "Enabling Collaborative Distance Robotics Education for Novice Programmers," in 2021 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), 2021, pp. 1–5.

S. Cooper, W. Dann, and R. Pausch, "Alice: a 3-D tool for introductory programming concepts," J. Comput. Sci. Coll., vol. 15, no. 5, pp. 107–116, 2000.

A. Al-Jarrah and E. Pontelli, "AliCe-ViLlagE Alice as a Collaborative Virtual Learning Environment," in Proceedings - Frontiers in Education Conference, FIE, 2015, vol. 2015-Febru, no. February, pp. 1-9. doi:10.1109/FIE.2014.7044089, doi: 10.1109/FIE.2014.7044089.

B. Selwyn-Smith, C. Anslow, M. Homer, and J. R. Wallace, "Co-located Collaborative Block-Based Programming," in 2019 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), 2019, pp. 107–116.

B. T. Fasy, S. A. Hancock, B. Z. Komlos, B. Kristiansen, S. Micka, and A. S. Theobold, "Bring the page to life: Engaging rural students in computer science using alice," in Proceedings of the 2020 ACM Conference on Innovation and Technology in Computer Science Education, 2020, pp. 110–116.

C. Kelleher and R. Pausch, "Using storytelling to motivate programming," Commun. ACM, vol. 50, no. 7, pp. 58–64, 2007, doi: 10.1145/1272516.1272540.

B. Johnson and C. Larry, Quantitative, Qualitative, and Mixed Approaches. SAGE Publications, Incorporated, 2003.

A. Al-Jarrah and E. Pontelli, "The collaborative virtual affinity group model: principles, design, implementation, and evaluation," Int. J. Comput. Appl., vol. 42, no. 5, pp. 485–513, 2020.

M. Kölling, "Lessons from the Design of Three Educational Programming Environments," Int. J. People-Oriented Program., vol. 4, no. 1, pp. 5–32, 2015, doi: 10.4018/IJPOP.2015010102.

S. J. Cox and S. J. Johnston, Raspberry Pi Technology. MDPI, 2018.

N. Lytle, A. Milliken, V. Catete, and T. Barnes, "Investigating different assignment designs to promote collaboration in block-based environments," in Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE, 2020, pp. 832–838, doi: 10.1145/3328778.3366943.

J. Lewis, "Myths about object-orientation and its pedagogy," in SIGCSE Bulletin (Association for Computing Machinery, Special Interest Group on Computer Science Education), 2000, vol. 32, no. 1, pp. 245–249, doi: 10.1145/331795.331863.

A. L. Asnawi et al., "The needs of collaborative tool for practicing pair programming in educational setting," Int. J. Interact. Mob. Technol., vol. 13, no. 7, pp. 17–30, 2019, doi: 10.3991/ijim.v13i07.10722



  • There are currently no refbacks.

Published by INSIGHT - Indonesian Society for Knowledge and Human Development