Abstract
This study investigates the impact of different programming modalities on novice programmers in introductory computer science courses. We conducted a quasi-experimental study comparing block-based, text-based, and hybrid programming environments in high school classrooms over a 5-week period. Using a mixed-methods approach, we analyzed students' conceptual understanding, programming practices, and attitudes across the three modalities. Our findings indicate that both block-based and hybrid approaches led to greater conceptual gains and more positive attitudes compared to text-based programming. However, text-based programming was perceived as more authentic. The hybrid approach showed promise in combining the benefits of both block and text modalities. This study contributes to our understanding of how programming modalities shape novices' learning experiences and has implications for curriculum design and tool selection in introductory CS education.
References
Michal Armoni, Orni Meerbaum-Salant, and Mordechai Ben-Ari. 2015. From scratch to "real" programming. ACM Transactions on Computing Education (TOCE) 14, 4 (2015), 1–15.
David Bau, D Anthony Bau, Mathew Dawson, and C Sydney Pickens. 2015. Pencil code: block code for a text world. In Proceedings of the 14th International Conference on Interaction Design and Children. 445–448.
David Bau, Jeff Gray, Caitlin Kelleher, Josh Sheldon, and Franklyn Turbak. 2017. Learnable programming: blocks and beyond. Commun. ACM 60, 6 (2017), 72–80.
Matthew Berland, Taylor Martin, Tom Benton, Carmen Petrick Smith, and Don Davis. 2013. Learning, understanding, and computational algorithmic thinking: Conceptual learning in high school students' beginning programming courses. Journal of the Learning Sciences 22, 4 (2013), 564–599.
Stephen Cooper, Wanda Dann, and Randy Pausch. 2000. Alice: a 3-D tool for introductory programming concepts. Journal of Computing Sciences in Colleges 15, 5 (2000), 107–116.
Diana Franklin, Gabrielle Skifstad, Reiny Rolock, Isha Mehrotra, Valerie Ding, Alexandria Hansen, David Weintrop, and Danielle Harlow. 2017. Using upper-elementary student performance to understand conceptual sequencing in a blocks-based curriculum. In Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education. 231–236.
Shuchi Grover, Roy Pea, and Stephen Cooper. 2015. Designing for deeper learning in a blended computer science course for middle school students. Computer Science Education 25, 2 (2015), 199–237.
Mark Guzdial. 2015. Learner-centered design of computing education: Research on computing for everyone. Morgan & Claypool Publishers.
Caitlin Kelleher and Randy Pausch. 2005. Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. ACM Computing Surveys (CSUR) 37, 2 (2005), 83–137.
Michael Kölling, Neil CC Brown, and Amjad Altadmri. 2017. Frame-based editing: Combining the best of blocks and text programming. 2017 IEEE Blocks and Beyond Workshop (B&B) (2017), 1–4.
John Maloney, Mitchel Resnick, Natalie Rusk, Brian Silverman, and Evelyn Eastmond. 2010. The scratch programming language and environment. ACM Transactions on Computing Education (TOCE) 10, 4 (2010), 1–15.
John H Maloney, Kylie Peppler, Yasmin Kafai, Mitchel Resnick, and Natalie Rusk. 2008. Programming by choice: urban youth learning programming with scratch. ACM SIGCSE Bulletin 40, 1 (2008), 367–371.
Jane Margolis and Allan Fisher. 2003. Unlocking the clubhouse: Women in computing. MIT press.
Lauren E Margulieux, Richard Catrambone, and Mark Guzdial. 2012. Engaging learners in computer science education through computational remixing with EarSketch. In Proceedings of the 43rd ACM technical symposium on Computer Science Education. 85–90.
Orni Meerbaum-Salant, Michal Armoni, and Mordechai Ben-Ari. 2011. Habits of programming in scratch. Proceedings of the 16th annual joint conference on Innovation and technology in computer science education (2011), 168–172.
Thomas W Price and Tiffany Barnes. 2015. Comparing textual and block interfaces in a novice programming environment. In Proceedings of the eleventh annual International Conference on International Computing Education Research. 91–99.
Thomas W Price, Neil CC Brown, Dragan Lipovac, Tiffany Barnes, and Michael Kölling. 2016. Evaluation of a frame-based programming editor. In Proceedings of the 2016 ACM Conference on International Computing Education Research. 33–42.
Mitchel Resnick, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum, Jay Silver, Brian Silverman, et al . 2009. Scratch: Programming for all. Commun. ACM 52, 11 (2009), 60–67.
Elliot Soloway and Kate Ehrlich. 1983. Novice mistakes: Are the folk wisdoms correct? Commun. ACM 26, 11 (1983), 853–865.
David Weintrop and Nathan Holbert. 2017. From blocks to text and back: Programming patterns in a dual-modality environment. In Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education. 633–638.
David Weintrop and Uri Wilensky. 2015. To block or not to block, that is the question: students' perceptions of blocks-based programming. In Proceedings of the 14th International Conference on Interaction Design and Children. 199–208.
David Weintrop and Uri Wilensky. 2015. Using commutative assessments to compare conceptual understanding in blocks-based and text-based programs. In Proceedings of the eleventh annual International Conference on International Computing Education Research. 101–110.
David Weintrop and Uri Wilensky. 2017. Between a block and a typeface: Designing and evaluating hybrid programming environments. In Proceedings of the 2017 Conference on Interaction Design and Children. 183–192.
David Weintrop and Uri Wilensky. 2017. Comparing block-based and text-based programming in high school computer science classrooms. ACM Transactions on Computing Education (TOCE) 18, 1 (2017), 1–25.
David Weintrop and Uri Wilensky. 2018. How block-based, text-based, and hybrid block/text modalities shape novice programming practices. International Journal of Child-Computer Interaction 17 (2018), 83–92.
Amanda Wilson and David C Moffat. 2010. Evaluating scratch to introduce younger schoolchildren to programming. In Proceedings of the 22nd Annual Psychology of Programming Interest Group Workshop.
This work is licensed under a Creative Commons Attribution-NoDerivatives 4.0 International License.
Copyright (c) 2024 Christine Gkreka, Kostas Gavrilis (Author)