Skip to main content
Log in

Block-based versus text-based programming: a comparison of learners’ programming behaviors, computational thinking skills and attitudes toward programming

  • Development Article
  • Published:
Educational technology research and development Aims and scope Submit manuscript

Abstract

In the current era where computational literacy holds significant relevance, a growing number of schools across the globe have placed emphasis on K-12 programming education. This field of education primarily comprises two distinct modalities—the block-based programming modality (BPM) and the text-based programming modality (TPM). Previous research may not have provided a complete understanding of the differences between these two modalities as it did not take into account both the learning process and learning outcomes. This study aimed to compare secondary students’ programming behaviors, computational thinking skills, and attitudes toward programming between the two modalities through a quasi-experimental design in a Chinese secondary school. The findings showed that (1) learners in TPM encountered more syntactical errors and spent more time between two clicks of debugging, while learners in BPM had more code-changing behaviors by adjusting programming blocks, made more attempts of debugging, and had more irrelevant behaviors; (2) learners in BPM achieved a higher level of computational thinking skills; (3) learners in both modalities experienced a slight decrease in confidence and enjoyment, while learners in BPM had higher interest levels in programming. (4) Code Changer, Minimal Debugger, Maximal Debugger, Distracted Coder and Average Coder were identified through students’ programming behavior in the two programming modalities, and differences in their CT skills and attitudinal data were revealed. Lastly, pedagogical implications based on the findings are also discussed.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Data availability

The data can be made available upon request from the corresponding authors.

References

  • Allsop, Y. (2019). Assessing computational thinking process using a multiple evaluation approach. International Journal of Child-Computer Interaction, 19, 30–55. https://doi.org/10.1016/j.ijcci.2018.10.004

    Article  Google Scholar 

  • Alshaigy, B., Kamal, S., Mitchell, F., Martin, C., & Aldea, A. (2015). Pilet: an interactive learning tool to teach python. In Judith, G. E., Sue, S., & Jan, V. (Eds.), WiPSCE’15: Proceedings of the workshop in primary and secondary computing education (pp. 76–79). ACM.

  • Angeli, C., Voogt, J., Fluck, A., Webb, M., Cox, M., Malyn-Smith, J., & Zagami, J. (2016). A K-6 computational thinking curriculum framework: Implications for teacher knowledge. Educational Technology & Society, 19(3), 47–57.

    Google Scholar 

  • Armoni, M., Meerbaum-Salant, O., & Ben-Ari, M. (2015). From scratch to “real” programming. ACM Transactions on Computing Education, 14(25), 1–15. https://doi.org/10.1145/2677087

    Article  Google Scholar 

  • Bai, X. M., & Gu, X. Q. (2019). Research on the construction and application of the computational thinking instrument in K12. China Educational Technology, 10, 83–90.

    Google Scholar 

  • Bau, D., Gray, J., Kelleher, C., Sheldon, J., & Turbak, F. (2017). Learnable programming: Blocks and beyond. Communications of the ACM, 60, 72–80. https://doi.org/10.1145/3015455

    Article  Google Scholar 

  • Bey, A., Pérez-Sanagustín, M., & Broisin, J. (2019). Unsupervised automatic detection of learners’ programming behavior. In Scheffel, M., Broisin, J., Pammer-Schindler, V., Ioannou, A., & Schneider, J. (Eds.), EC-TEL 2021: Proceedings of the European conference on technology enhanced learning (pp. 69–82). Springer.

  • Brennan, K., & Resnick, M. (2012). New frameworks for studying and assessing the development of computational thinking. In Arnetha, F. B., & Cynthia, A. T. (Eds.), AERA’ 12: Proceedings of the 2012 annual meeting of the American educational research association (pp. 1–25). AERA.

  • Dijkstra, E. (1982). How do we tell truths that might hurt? ACM SIGPLAN Notices, 17(5), 13–15. https://doi.org/10.1145/947923.947924

    Article  Google Scholar 

  • Doleck, T., Bazelais, P., Lemay, D. J., Saxena, A., & Basnet, R. B. (2017). Algorithmic thinking, cooperativity, creativity, critical thinking, and problem solving: Exploring the relationship between computational thinking skills and academic performance. Journal of Computers in Education, 4(4), 355–369. https://doi.org/10.1007/s40692-017-0090-9

    Article  Google Scholar 

  • Duncan, C., Bell, T., & Tanimoto, S. (2014). Should your 8-year-old learn coding? In Carsten, S., Michael, E. C., & Judith, G. E. (Chairs), WiPSE’13: Proceedings of the 9th workshop in primary and secondary computing education (pp.60–69). ACM.

  • Durak, H. Y., & Saritepeci, M. (2018). Analysis of the relation between computational thinking skills and various variables with the structural equation model. Computers & Education, 116, 191–202. https://doi.org/10.1016/j.compedu.2017.09.004

    Article  Google Scholar 

  • Dutt, A., Aghabozrgi, S., Ismail, M. A. B., & Mahroeian, H. (2015). Clustering algorithms applied in educational data mining. International Journal of Information and Electronics Engineering, 5(2), 112. https://doi.org/10.7763/IJIEE.2015.V5.513

    Article  Google Scholar 

  • Eid, C., & Millham, R. (2012). Which introductory programming approach is most suitable for learners: Procedural or visual programming. American Journal of Business Education, 5(2), 173–178. https://doi.org/10.19030/ajbe.v5i2.6819

    Article  Google Scholar 

  • Estey, A., & Coady, Y. (2016). Can interaction patterns with supplemental study tools predict outcomes in CS1? In Alison, C., Ernesto, C. V. (Chairs), ITiCSE’16: Proceedings of the 2016 ACM conference on innovation and technology in computer science education (pp. 236–241). ACM. https://doi.org/10.1145/2899415.2899428

  • Falloon, G. (2016). An analysis of young learners’ thinking when completing basic coding tasks using Scratch Jnr. on the iPad. Journal of Computer Assisted Learning, 32(6), 576–593. https://doi.org/10.1111/jcal.12155

    Article  Google Scholar 

  • Fay, M. P., & Proschan, M. A. (2010). Wilcoxon-mann-whitney or t-test? On assumptions for hypothesis tests and multiple interpretations of decision rules. Statistics Surveys, 4, 1–39. https://doi.org/10.1214/09-SS051

    Article  Google Scholar 

  • García, D., Harvey, B., & Barnes, T. (2015). The beauty and joy of computing. ACM Inroads, 6, 71–79. https://doi.org/10.1145/2835184

    Article  Google Scholar 

  • Garneli, V., & Chorianopoulos, K. (2018). Programming video games and simulations in science education: Exploring computational thinking through code analysis. Interactive Learning Environments, 26(3), 386–401. https://doi.org/10.1080/10494820.2017.1337036

    Article  Google Scholar 

  • Giannakos, M. N., Koilias, C., Vlamos, P., & Doukakis, S. (2013). Measuring students’ acceptance and confidence in algorithms and programming: The impact of engagement with CS on greek secondary education. Informatics in Education, 12(2), 207–219.

    Article  Google Scholar 

  • Grover, S. (2021). Teaching and assessing for transfer from block-to-text programming in middle school computer science. In C. Hohensee & J. Lobato (Eds.), Transfer of learning. Research in mathematics education. Springer.

    Google Scholar 

  • Grover, S., & Basu, S. (2017). Measuring student learning in introductory block-based programming: Examining misconceptions of loops, variables, and boolean logic. In Michael, E. C., & Stephen, H. E. (Eds.), SIGCSE’17: Proceedings of the 2017 ACM SIGCSE technical symposium on computer science education (pp. 267–272). ACM.

  • Grover, S., Pea, R., & Cooper, S. (2015). Designing for deeper learning in a blended computer science course for middle school learners. Computer Science Education, 25(2), 199–237. https://doi.org/10.1080/08993408.2015.1033142

    Article  Google Scholar 

  • HelloGitHub. (2023, July 24). Programming Language Rankings in June 2023. https://hellogithub.com/report/tiobe/

  • Howland, K., & Good, J. (2014). Learning to communicate computationally with flip: a bi-modal programming language for game creation. Computers & Education, 80, 224–240. https://doi.org/10.1016/j.compedu.2014.08.014

    Article  Google Scholar 

  • ISTE. (2015). CT leadership toolkit. Retrieved 2015, http://www.iste.org/docs/ctdocuments/ct-leadershipt-toolkit.pdf?sfvrsn¼4.

  • Jiang, B., Zhao, W., Gu, X., & Yin, C. (2021). frame: a case study from scratch online community. Educational Technology Research and Development, 69(5), 2399–2421. https://doi.org/10.1007/s11423-021-10021-8

    Article  Google Scholar 

  • Jocius, R., O’Byrne, W. I., Albert, J., Joshi, D., Robinson, R., & Andrews, A. (2021). Infusing computational thinking into STEM teaching: From professional development to classroom practice. Educational Technology & Society, 24(4), 166–179.

    Google Scholar 

  • Katai, Z. (2015). The challenge of promoting algorithmic thinking of both sciences-and humanities-oriented learners. Journal of Computer Assisted Learning, 31(4), 287–299. https://doi.org/10.1111/jcal.12070

    Article  Google Scholar 

  • Kölling, M., Brown, N., & Altadmri, A. (2015). Frame-based editing: Easing the transition from blocks to text-based programming. In Judith, G. E., Sue, S., & Jan, V. (Eds.), WiPSCE '15: Proceedings of the workshop in primary and secondary computing education (pp. 29–38). ACM.

  • Korkmaz, Ö., Çakir, R., & Özden, M. Y. (2017). A validity and reliability study of the computational thinking scales (CTS). Computers in Human Behavior, 72, 558–569.

    Article  Google Scholar 

  • Lin, Y., & Weintrop, D. (2021). The landscape of Block-based programming: Characteristics of block-based environments and how they support the transition to text-based programming. Journal of Computer Languages, 67, 101075. https://doi.org/10.1016/j.cola.2021.101075

    Article  Google Scholar 

  • Ma, H., Zhao, M., Wang, H., Wan, X., Cavanaugh, T. W., & Liu, J. (2021). Promoting pupils’ computational thinking skills and self-efficacy: A problem-solving instructional approach. Educational Technology Research and Development, 69(3), 1599–1616. https://doi.org/10.1007/s11423-021-10016-5

    Article  Google Scholar 

  • MacQueen, J. (1967). Some methods for classification and analysis of multivariate observations. In Lucien, M. L. C., & Jerzy, N. (Eds.), Proceedings of the fifth Berkeley symposium on mathematical statistics and probability (pp. 281–297). Berkeley.

  • Maloney, J. H., Peppler, K., Kafai, Y., Resnick, M., & Rusk, N. (2008). Programming by choice: Urban youth learning programming with scratch. SIGCSE Bulletin, 40(1), 367–371. https://doi.org/10.1145/1352322.1352260

    Article  Google Scholar 

  • Mannila, L., Dagiene, V., Demo, B., Grgurina, N., Mirolo, C., Rolandsson, L., et al. (2014). Computational thinking in K-9 education. Proceedings of the working group reports of the 2014 on innovation & technology in computer science education conference, ITiCSE-WGR 2014 (1–29). ACM.

  • Ministry of Education. (2017). General high school information technology curriculum standard (2017 Edition). Ministry of Education of the People’s Republic of China website. http://www.moe.gov.cn/jyb_xxgk/xxgk_jyta/jyta_kjs/202002/.html

  • Mladenović, M., Boljat, I., & Žanko, Ž. (2018). Comparing loops misconceptions in block-based and text-based programming languages at the K-12 level. Education and Information Technologies, 23(4), 1483–1500. https://doi.org/10.1007/s10639-017-9673-3

    Article  Google Scholar 

  • Munson, J. P., & Zitovsky, J. P. (2018). Models for early identification of struggling novice programmers. In Tiffany, B., & Daniel, G. (Chairs), SIGCSE’18: Proceedings of the 49th ACM technical symposium on computer science education (pp. 699–704). ACM. https://doi.org/10.1145/3159450.3159476

  • Nolan, K., & Bergin, S. (2016). The role of anxiety when learning to program: A systematic review of the literature. In Judy, S., & Calkin, S. M. (Eds.), Koli Calling’16: Proceedings of the 16th koli calling international conference on computing education research (pp. 61–70). ACM.

  • 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

    Article  Google Scholar 

  • Ochoa, X. (2017). Chapter 11: multimodal learning analytics. In C. Lang, G. Siemens, A. Wise, & D. Gašević (Eds.), Handbook of learning analytics (1st ed., pp. 143–150). Creative Commons License.

    Google Scholar 

  • Pellas, N., & Vosinakis, S. (2018). The effect of simulation games on learning computer programming: A comparative study on high school students’ learning performance by assessing computational problem-solving strategies. Education and Information Technologies, 23(6), 2423–2452. https://doi.org/10.1007/s10639018-9724-4

    Article  Google Scholar 

  • Pereira, F. D., Oliveira, E., Cristea, A., Fernandes, D., Silva, L., Aguiar, G., Alamri, A., & Alshehri, M. (2019). Early dropout prediction for programming courses supported by online judges. In I. Seiji, M. A. O. Eva, H. Peter, M. Bruce, & L. Rose (Eds.), Artificial intelligence in education (pp. 67–72). Springer. https://doi.org/10.1007/978-3-030-23207-8_13

    Chapter  Google Scholar 

  • Pereira, F. D., Oliveira, E. H. T., Oliveira, D. B. F., Cristea, A. I., Carvalho, L. S. G., Fonseca, S. C., Toda, A., & Isotani, S. (2020). Using learning analytics in the Amazonas: Understanding students’ behaviour in introductory programming. British Journal of Educational Technology, 51(4), 955–972. https://doi.org/10.1111/bjet.12953

    Article  Google Scholar 

  • Price, T.W., & Barnes, T. (2015) Comparing textual and block interfaces in a novice programming environment. In Brian, D. (Eds.), ICER'15: Proceedings of the eleventh annual international conference on international computing education research (pp.91–99). ACM.

  • Riley, D. D., & Hunt, K. A. (2014). Computational thinking for the modern problem Solver. CRC Press.

    Book  Google Scholar 

  • Rojas-López, A., & García-Peñalvo, F. J. (2018). Learning scenarios for the subject methodology of programming from evaluating the computational thinking of new students. Revista Iberoamericana De Tecnologias Del Aprendizaje, 13(1), 30–36. https://doi.org/10.1109/RITA.2018.2809941

    Article  Google Scholar 

  • Román-González, M., Pérez-González, J. C., & Jiménez-Fernández, C. (2017). Which cognitive abilities underlie computational thinking? Criterion validity of the computational thinking test. Computers in Human Behavior, 72, 678–691. https://doi.org/10.1016/j.chb.2016.08.047

    Article  Google Scholar 

  • Rousseeuw, P. J. (1987). Silhouettes: A graphical aid to the interpretation and validation of cluster analysis. Journal of Computational and Applied Mathematics, 20, 53–65.

    Article  Google Scholar 

  • Scherer, R., Siddiq, F., & Sánchez Viveros, B. (2020). A meta-analysis of teaching and learning computer programming: Effective instructional approaches and conditions. Computers in Human Behavior, 109, 106349. https://doi.org/10.1016/j.MoB.2020.106349

    Article  Google Scholar 

  • Sherin, B. L. (2001). A comparison of programming languages and algebraic notation as expressive languages for physics. International Journal of Computers for Mathematical Learning, 6(1), 1–61. https://doi.org/10.1023/A:1011434026437

    Article  Google Scholar 

  • Shi, L., & Cristea, A. I. (2018). In-depth exploration of engagement patterns in MOOCs. In Hakim, H., Wojciech, C., Hua, M., Hye-Young, P., & Rui, Zhou. (Eds.), ICWE 2019: Proceedings of the 19th international conference on web information systems engineering (pp. 395–409). Springer.

  • Shi, L., Cristea, A. I., Toda, A. M., & Oliveira, W. (2019). Revealing the hidden patterns: A comparative study on profiling subpopulations of MOOC learners. In Siarheyeva. A., Barry. C., Lang, M., Linger, H., & Schneider, C. (Eds.), Proceedings of the 28th international conference on information systems development. Springer.

  • Streiner, D. L. (2003). Starting at the beginning: An introduction to coefficient Alpha and internal consistency. Journal of Personality Assessment, 80, 99–103. https://doi.org/10.1207/S15327752JPA8001_18

    Article  Google Scholar 

  • Sun, D., Ouyang, F., Li, Y., & Chen, H. (2021). Three contrasting pairs’ collaborative programming processes in China’s secondary education. Journal of Educational Computing Research, 1(8), 54.

    Google Scholar 

  • Taub, R., Armoni, M., & Ben-Ari, M. (2012). CS unplugged and middle-school learners’ views, attitudes, and intentions regarding CS. ACM Transactions on Computing Education, 12(2), 1–29. https://doi.org/10.1145/2160547.2160551

    Article  Google Scholar 

  • Tempel, M. (2013). Blocks programming. CSTA Voice.

    Google Scholar 

  • TIOBE. (2023). TIOBE Index for August 2023. https://www.tiobe.com/tiobe-index/

  • Tsai, M. J., Liang, J. C., & Hsu, C.-Y. (2021). The computational thinking scale for computer literacy education. Journal of Educational Computing Research, 59(4), 579–602. https://doi.org/10.1177/0735633120972356

    Article  Google Scholar 

  • Weintrop, D. (2015). Comparing text-based, blocks-based, and hybrid blocks/text programming tools. Brian, D. (Ed.), Proceedings of the eleventh annual international conference on international computing education research (pp. 283–284). ACM.

  • Weintrop, D., & Wilensky, U. (2015). To block or not to block, that is the question: Learners’ perceptions of blocks-based programming. In Marina, U. B., & Glenda, R. (Eds.), Proceedings of the 14th international conference on interaction design and children (pp. 199–208). ACM.

  • Weintrop, D., & Wilensky, U. (2017). Comparing block-based and text-based programming in high school computer science classrooms. ACM Transactions on Computing Education, 18(1), 1–25. https://doi.org/10.1145/3089799

    Article  Google Scholar 

  • 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

    Article  Google Scholar 

  • Wilson, A., & Moffat, D. C. (2010). Evaluating Scratch to introduce younger schoolchildren to programming. SCRATCHED website. https://scratched.gse.harvard.edu/resources/evaluating-scratch-introduce-younger-schoolchildren-programming.html

  • Wing, J. (2008). Computational thinking and thinking about computing. Philosophical Transactions of the Royal Society A, 366, 3717–3725. https://doi.org/10.1098/rsta.2008.0118

    Article  Google Scholar 

  • Wing, J. (2011). Computational thinking—what and why? Carnegie Mellon.

    Google Scholar 

  • Wing, J. (2014). Computational thinking benefits society. Social issues in computing website. http://socialissues.cs.toronto.edu/index.html%3Fp=279.html.

  • Wu, B., Hu, Y., Ruis, A. R., & Wang, M. (2019). Analysing computational thinking in collaborative programming: A quantitative ethnography approach. Journal of Computer Assisted Learning, 35(3), 421–434. https://doi.org/10.1111/jcal.12348

    Article  Google Scholar 

  • Yucer, Y., & Rizvanoglu, K. (2019). Battling gender stereotypes: A user study of a code-learning game, “Code combat”, with middle school children. Computers in Human Behavior, 99, 352–365. https://doi.org/10.1016/j.MoB.2019.05.029

    Article  Google Scholar 

Download references

Acknowledgements

This work was supported by the National Natural Science Foundation of China (NSFC) [grant number 62307011]; the National Natural Science Foundation of China (NSFC) [grant number 61977057]; Guangdong Basic and Applied Basic Research Foundation, China [Grant No. 2021A1515110081]; Guangdong Planning Office of Philosophy and Social Science, China [Grant No. GD22XJY12]; Shenzhen Science, Technology and Innovation Commission, China [Grant No. 20220810115236001].

Funding

This work was funded by National Natural Science Foundation of China (Grant No. 62307011), Dan Sun. National Natural Science Foundation of China (NSFC) (Grant No. 61977057), Yan Li. Guangdong Basic and Applied Basic Research Foundation (Grant No. 2021A1515110081), Miaoting Cheng. Guangdong Planning Office of Philosophy and Social Science (Grant No. GD22XJY12), Miaoting Cheng. Science, Technology and Innovation Commission of Shenzhen Municipality (Grant No. 20220810115236001), Miaoting Cheng.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yan Li.

Ethics declarations

Conflict of interest

We declare that we have no financial and personal relationships with other people or organizations that can inappropriately influence our work, there is no professional or other personal interest of any nature or kind in any product, service and/or company that could be construed as influencing the position presented in, or the review of, the manuscript entitled.

Informed consent

Informed consent was obtained from all individual participants included in the study.

Research involving human and animal rights

All procedures performed in studies involving human participants were in accordance with the ethical standards of the institutional and/or national research committee.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Sun, D., Looi, CK., Li, Y. et al. Block-based versus text-based programming: a comparison of learners’ programming behaviors, computational thinking skills and attitudes toward programming. Education Tech Research Dev (2024). https://doi.org/10.1007/s11423-023-10328-8

Download citation

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s11423-023-10328-8

Keywords

Navigation