Developing Computational Thinking Skills Through a Text-Based Programming Approach: A Conceptual Framework
DOI:
https://doi.org/10.70148/rise.v2i6.2Keywords:
Computational Thinking Skills, Text-Based Programming, Structured ProgrammingAbstract
Computational thinking has been identified as a fundamental requirement within 21st-century education curricula. It encompasses systematic problem analysis and the development of algorithmic solutions to address problems efficiently. Prior studies have predominantly focused on unplugged activities and Programming Assistance Tools (PATs), such as Alice and Scratch, in the development of computational thinking skills. However, empirical investigations examining the effectiveness of computational thinking within text-based programming environments remain limited. This study aims to develop a conceptual framework that integrates both theoretical and practical dimensions in the teaching of computational thinking, while also evaluating the effectiveness of two text-based programming languages: Python and C++ in enhancing these skills. The construction of this framework is grounded in two key models: Model of Learning Computational Thinking, which emphasizes cognitive development, and Programming in Seven Steps, which focuses on structured programming strategies. As a result, an integrative conceptual framework is proposed to support a more structured and reflective teaching and learning process. This framework is expected to inform future research and curriculum development initiatives related to the cultivation of computational thinking skills, particularly within text-based programming contexts.
References
Abdunabi, R., Hbaci, I., & Yu Ku, H. (2019). Towards Enhancing Programming Self-Efficacy Perceptions Among Undergraduate Information. Journal of Information Technology Education: Research. 18, 185–206.
Ahmad Zamzuri, M.A. (2019). Coding di sekolah: Panduan untuk guru dan pelajar. UPSI Press.
Arboleda, F. J. M., Arias, M. R., & Riveros, J. A. H. (2023). Performance of Parallelism in Python and C++. IAENG International Journal of Computer Science, 50(2).
Azmi, I. N., Atan, N. A., Tahir, L., Paslan, N. A., & Inda, A. (2024). View of Integration of Computational Thinking in Learning Computer Programming with Gamification Elements to Foster Student Programming Skill and Student Performance. Innovative Teaching and Learning Journal. https://itlj.utm.my/index.php/itlj/article/view/156/139
Bell, T., & Vahrenhold, J. (2018). CS Unplugged — How Is It Used , and Does It Work ? (H.-J. Böckenhauer, D. Komm, & W. Unger (eds.); Vol. 1). Springer International Publishing. https://doi.org/10.1007/978-3-319-98355-4
Brennan, K., & Resnick, M. (2012). New frameworks for studying and assessing the development of computational thinking. Proceedings of the 2012 Annual Meeting of the American Educational Research Association, Vancouver, Canada (AERA 2012), 1–25. https://doi.org/10.1.1.296.6602
Buitrago Flórez, F., Casallas, R., Hernández, M., Reyes, A., Restrepo, S., & Danies, G. (2017). Changing a generation’s way of thinking: Teaching computational thinking through programming. Review of Educational Research, 87(4), 834–860. https://doi.org/10.3102/0034654317710096
Chee, K. L., Meng, L. H., Wu, L., Seow, P., & Liu, L. (2018). Analysis of linkages between an unplugged activity and the development of computational thinking. Computer Science Education, 28(3), 255–279. https://doi.org/10.1080/08993408.2018.1533297
Csapo Gabor. (2019). Placing Event-Action-based Visual Programming in the Process of Computer Science Education. Acta Polytechnica Hungarica, 16(2). https://doi.org/10.12700/aph.16.2.2019.2.3
Curzon, P., McOwan, P. W., Plant, N., & Meagher, L. R. (2014). Introducing teachers to computational thinking using unplugged storytelling. Proceedings of the 9th Workshop in Primary and Secondary Computing Education on - WiPSCE ’14, 89–92. https://doi.org/10.1145/2670757.2670767
Dohn, N. B. (2020). Students’ interest in Scratch coding in lower secondary mathematics. British Journal of Educational Technology, 51(1), 71–83. https://doi.org/10.1111/bjet.12759
Eberhard, B., Podio, M., Radovica, E., Avotina, L., Peiseniece, L., & Sendon, M. C. (2017). Smart work: The transformer of the labour marker due to the fourth industrial revolution.
Erümit, K. A., Karal, H., Şahin, G., Aksoy, D. A., Gencan, A. A., & Benzer, A. İ. (2019). A model suggested for programming teaching: Programming in seven steps. Egitim ve Bilim, 44(197), 155–183. https://doi.org/10.15390/EB.2018.7678
Fatima, P. (2023). Optimizing Algorithm Efficiency through Advanced Data Structures in C++: A Comparative Analysis of Performance, Scalability, and Complexity. In International Journal of Computations, Information and Manufacturing (IJCIM) (Vol. 3, Issue 2, p. 2023). https://doi.org/10.54489/ijcim.v3i2.256
Feaster, Y., Segars, L., Wahba, S. K., & Hallstrom, J. O. (2011). Teaching CS unplugged in the high school (with limited success). Proceedings of the 16th Annual Joint Conference on Innovation and Technology in Computer Science Education - ITiCSE ’11, 248. https://doi.org/10.1145/1999747.1999817
Felicia, A., Sabariah, S., Wong, W., & Marippan, M. (2017). View of Computational Thinking and Tinkering: Exploration Study of Primary School Students’ in Robotic and Graphical Programming. International Journal of Assessment and Evaluation in Education. https://ejournal.upsi.edu.my/index.php/AJATeL/article/view/1983/1444
Figueiredo, J., & García-Peñalvo, F. J. (2018). Building Skills in Introductory Programming. Proceedings of the Sixth International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM’18, 46–50. https://doi.org/10.1145/3284179.3284190
Flórez, F. B., Casallas, R., Hernández, M., Reyes, A., Restrepo, S., & Danies, G. (2017). Changing a Generation ’ s Way of Thinking : Teaching Computational Thinking Through Programming. XX(X), 1–27. https://doi.org/10.3102/0034654317710096
García-Peñalvo, F. J., & Mendes, A. J. (2018). Exploring the computational thinking effects in pre-university education. Computers in Human Behavior, 80, 407–411. https://doi.org/10.1016/j.chb.2017.12.005
Garvin, M., Killen, H., Plane, J., & Weintrop, D. (2019). Primary school teachers’ conceptions of computational thinking. Proceedings of the 50th ACM Technical Symposium on Computer Science Education, 2, 899–905. https://doi.org/10.1145/3287324.3287376
Gonzalez, F., Lopez, C., & Castro, C. (2018). Development of Computational Thinking in High School Students: A Case Study in Chile. 2018 37th International Conference of the Chilean Computer Science Society (SCCC), 2018-Novem(November), 1–8. https://doi.org/10.1109/SCCC.2018.8705239
Grover, S., & Jackiw, N. (2019). Non-Programming Activities for Engagement with Foundational Concepts in Introductory Programming. 1136–1142.
Grover, S., & Pea, R. (2013). Computational Thinking in K–12: A Review of the State of the Field. Educational Researcher. https://sci-hub.se/https://doi.org/10.3102/0013189X12463051
Grover, S., Pea, R., & Cooper, S. (2016). Factors Influencing Computer Science Learning in Middle School. 552–557. https://doi.org/10.1145/2839509.2844564
Hemmendinger, D. (2010). A plea for modesty. ACM Inroads, 1(2), 4–7. https://doi.org/10.1145/1805724.1805725
Henry, J., & Dumas, B. (2018). Perceptions of computer science among children after a hands-on activity: A pilot study. 2018 IEEE Global Engineering Education Conference (EDUCON), 2018-April, 1811–1817. https://doi.org/10.1109/EDUCON.2018.8363454
Ibrahim, A., Nurul Farhana, J., & Zaidatun, T. (2018). Programming Skills and the Relation in Fostering Students’ Higher Order Thinking. Asian Social Science, 14(11), 76. https://doi.org/10.5539/ass.v14n11p76
Khasyyatillah, I., Osman, K., & Husnin, H. (2024). Pengintegrasian Pemikiran Komputasional melalui Aplikasi Mudah Alih untuk Meningkatkan Disposisi Pemikiran Komputasional. 49(2), 99–110.
Kılıç, S., Gökoğlu, S., & Öztürk, M. (2020). A Valid and Reliable Scale for Developing Programming-Oriented Computational Thinking. Journal of Educational Computing Research, 073563312096440. https://doi.org/10.1177/0735633120964402
Kong, S., & Abelson, H. (2019). Computational Thinking Education. In Computational Thinking Education. https://doi.org/10.1007/978-981-13-6528-7
Koorsse, M., Cilliers, C., & Calitz, A. (2015). Programming assistance tools to support the learning of IT programming in South African secondary schools. Computers & Education, 82, 162–178. https://doi.org/10.1016/j.compedu.2014.11.020
Lion, D., Chiu, A., Stumm, M., & Yuan, D. (2022). Investigating Managed Language Runtime Performance Why JavaScript and Python are 8x and 29x slower than C++, yet Java and Go can be faster? Proceedings of the 2022 USENIX Annual Technical Conference, ATC 2022, 835–851.
Lockwood, J., & Mooney, A. (2017). Computational Thinking in Education: Where does it Fit? A systematic literary review. International Journal of Computer Science Education in Schools, 2(1), 1–58. http://arxiv.org/abs/1703.07659
Lockwood, J., & Mooney, A. (2018). Computational Thinking in Secondary Education: Where does it fit? A systematic literary review. International Journal of Computer Science Education in Schools, 2(1), 41–60. https://doi.org/10.21585/ijcses.v2i1.26
Marcelino, M. J., Pessoa, T., Vieira, C., Salvador, T., & Mendes, A. J. (2018). Learning Computational Thinking and scratch at distance. Computers in Human Behavior, 80, 470–477. https://doi.org/10.1016/j.chb.2017.09.025
MDEC. (n.d.). MyDigitalMaker Initiative. Laporan Program Cikgu Juara Digital. Retrieved August 3, 2025, from https://mdec.my/mydigitalmaker
Mhashi, M. M., & Alakeel, A. L. I. M. (2013). Difficulties Facing Students in Learning Computer Programming Skills at Tabuk University. Recent Advances in Modern Educational Technologies, 15–24. https://doi.org/1.13189/ujer.215.391
Muhammad Ateeq, M., Hina Habib, H., Adnan Umer, A., & Muzammil Ul Rehman, M. (2014). C++ or python?: Which one to begin with: A learner’s perspective. Proceedings - 2014 International Conference on Teaching and Learning in Computing and Engineering, LATICE 2014, 64–69. https://doi.org/10.1109/LaTiCE.2014.20
Munawar, K., & Naveed, M. S. (2022). The Impact of Language Syntax on the Complexity of Programs: A Case Study of Java and Python. International Journal of Innovations in Science and Technology, 4(3), 683–695. https://doi.org/10.33411/ijist/2022040310
Nada Sharaf, N., Ahmed Ghada, G., Ahmed Adel, A., Abdennadher, S., & Berkling, K. (2019). Koding4Kinder : Teaching Computational Thinking to Pupils 6 sing a $ ombination of Programming and Electronics Platforms. 634–638.
Nguyen, H. (2019). Exploring Python as a replacement for C ++ in Imperative Programming for Computing Science at Radboud University. Radboud University.
Ogegbo, A. A., Adebunmi, ·, & Aina, Y. (2024). Exploring young students’ attitude towards coding and its relationship with STEM career interest. 29, 9041–9059. https://doi.org/10.1007/s10639-023-12133-5
Palts, T., & Pedate, M. (2020). A Model for Developing Computational Thinking Skills. Informatics in Education, 19(1), 113–128. https://doi.org/10.15388/infedu.2020.06
Psycharis, S., & Kallia, M. (2017). The effects of computer programming on high school students’ reasoning skills and mathematical self-efficacy and problem solving. https://doi.org/10.1007/s11251-017-9421-5
Qian, Y., & Lehman, J. (2017). Students ’ Misconceptions and Other Difficulties in Introductory Programming : A Literature Review. 18(1), 1–24.
Rodriguez, B., Kennicutt, S., Rader, C., & Camp, T. (2017). Assessing Computational Thinking in CS Unplugged Activities. 501–506.
Rodriguez, B., Rader, C., & Camp, T. (2016). Using Student Performance to Assess CS Unplugged Activities in a Classroom Environment. Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education - ITiCSE ’16, 95–100. https://doi.org/10.1145/2899415.2899465
Salayev. (2024). CONSIDERATIONS ON MODERN PROGRAMMING LANGUAGES. Mental Enlightenment Scientific –Methodological Journal, 4(2), 175–184.
Salleh Hudin, S. (2023). A Systematic Review of the Challenges in Teaching Programming for Primary Schools’ Students. Online Journal for TVET Practitioners, 8(1). https://doi.org/10.30880/ojtp.2023.08.01.008
Shepherd, D., Francis, P., Weintrop, D., Franklin, D., Li, B., & Afzal, A. (2018). An IDE for easy programming of simple robotics tasks. Proceedings - 18th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2018, 209–214. https://doi.org/10.1109/SCAM.2018.00032
Siti Rosminah, M. D., & Ahmad Zamzuri, M. A. (2012). Difficulties in learning programming : Views of students.
Siti Rosminah M. D. Derus, A. Z. M. A. (2012). Difficulties in learning programming: Views of students. 1st International Conference on Current Issues in Education (ICCIE 2012), September 2012, 74–79. https://doi.org/10.13140/2.1.1055.7441
Sivaraman, A., Zhang, T., Van den Broeck, G., & Kim, M. (2019). Active Inductive Logic Programming for Code Search. 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE), 292–303. https://doi.org/10.1109/ICSE.2019.00044
So, H. J., Jong, M. S. Y., & Liu, C. C. (2020). Computational Thinking Education in the Asian Pacific Region. Asia-Pacific Education Researcher, 29(1), 1–8. https://doi.org/10.1007/s40299-019-00494-w
Thies, R., & Vahrenhold, J. (2013). On plugging “unplugged” into CS classes. 365. https://doi.org/10.1145/2445196.2445303
Thies, R., & Vahrenhold, J. (2012). Reflections on outreach programs in CS classes. Proceedings of the 43rd ACM Technical Symposium on Computer Science Education - SIGCSE ’12, 487. https://doi.org/10.1145/2157136.2157281
Tsai, M.-J., Wang, C.-Y., & Hsu, P.-F. (2019). Developing the Computer Programming Self-Efficacy Scale for Computer Literacy Education. Journal of Educational Computing Research, 56(8), 1345–1360. https://doi.org/10.1177/0735633117746747
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
Umezawa, K., Nakazawa, M., & Hirasawa, S. (2023). Comparison of Biometric Information during Learning of Visual- and Text-Based Programming Languages. 8th International STEM Education Conference, ISTEM-Ed 2023 - Proceedings. https://doi.org/10.1109/ISTEM-ED59413.2023.10305730
Ung, L. L., Labadin, J., & Nizam, S. (2021). Development of a Rubric to Assess Computational Thinking Skills among Primary School Students in Malaysia. ESTEEM Academic Journal, 17(August), 11–22.
Voogt, J., Erstad, O., Dede, C., & Mishra, P. (2013). Challenges to learning and schooling in the digital networked world of the 21st century. Journal of Computer Assisted Learning, 29(5), 403–413. https://doi.org/10.1111/jcal.12029
Wen, F. H., Wu, T., & Hsu, W. C. (2023). Toward improving student motivation and performance in introductory programming learning by Scratch: The role of achievement emotions. Science Progress, 106(4), 1–21. https://doi.org/10.1177/00368504231205985
Wing, J. M. (2010). Computational Thinking: What and Why? Thelink - The Magazine of the Varnegie Mellon University School of Computer Science, March 2006, 1–6. http://www.cs.cmu.edu/link/research-notebook-computational-thinking-what-and-why
Wing, J. M. (2006). Computational thinking. Proceedings of the 16th Annual Joint Conference on Innovation and Technology in Computer Science Education - ITiCSE ’11, 49(3), 223. https://doi.org/10.1145/1999747.1999811
Yadav, A., Mayfield, C., Zhou, N., Hambrusch, S., & Korb, J. T. (2014). Computational thinking in elementary and secondary teacher education. ACM Transactions on Computing Education, 14(1), 1–16. https://doi.org/10.1145/2576872
Yuana, R. A., & Maryono, D. (2016). Robomind Utilization to Improve Student Motivation and Concept in Learning Programming. Ictte, 1, 962–966.
Yuen, T. T., Reyes, M., & Yuanlin, Z. (2018). Introducing Computer Science to High School Students through Logic Programming. 19(November 2018), 204–228. https://doi.org/10.1017/S1471068418000431
Yuen, T. T., Reyes, M., & Zhang, Y. (2018). Introducing Computer Science to High School Students through Logic Programming. 19(November 2018), 204–228. https://doi.org/10.1017/S1471068418000431
Downloads
Published
Issue
Section
License
Copyright (c) 2025 Fariza Zahari, Ahmad Zamzuri Mohamad Ali (Author)

This work is licensed under a Creative Commons Attribution 4.0 International License.








