10.1145/3328778.3366865acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article
Best Paper

Dual-Modality Instruction and Learning: A Case Study in CS1

Online:26 February 2020Publication History

ABSTRACT

In college-level introductory computer science courses, students traditionally learn to program using text-based languages which are common in industry and research. This approach means that learners must concurrently master both syntax and semantics. Blocks-based programming environments have become commonplace in introductory computing courses in K-12 schools and some colleges in part to simplify syntax challenges. However, there is evidence that students may face difficulty moving to text-based programming environments when starting with blocks-based environments. Bi-directional dual-modality programming environments provide multiple representations of programming language constructs (in both blocks and text) and allow students to transition between them freely. Prior work has shown that some students who use dual-modality environments to transition from blocks to text have more positive views of text programming compared to students who move directly from blocks to text languages, but it is not yet known if there is any impact on learning. To investigate the impact on learning, we conducted a study at a large public university across two semesters in a CS1 course (N=673). We found that students performed better on typical course exams when they were taught using dual-modality representations in lecture and were provided dual-modality tools. The results of our work support the conclusion that dual-modality instruction can help students learn computational concepts in early college computer science coursework.

References

  1. Bau, D. 2015. Droplet, a blocks-based editor for text code. Journal of Computing Sciences in Colleges. 30, 6 (2015), 138--144.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Bau, D.A. 2015. Integrating Droplet into Applab -Improving the usability of a blocks-based text editor. 2015 IEEE Blocks and Beyond Workshop (2015), 55--57.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Bau, D.A. and Bau, D.A. 2014. A Preview of Pencil Code. Proceedings of the 2nd Workshop on Programming for Mobile & Touch - PROMOTO '14 (2014), 21--24.Google ScholarGoogle Scholar
  4. Bau, D.A., Bau, D.A., Pickens, C.S. and Dawson, M. 2015. Pencil Code: Block Code for a Text World. Proceedings of the 14th International Conference on Interaction Design and Children (2015), 445--448.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Bau, D. and Bau, D.A. 2014. A Preview of Pencil Code. Proceedings of the 2nd Workshop on Programming for Mobile & Touch - PROMOTO '14. (2014), 21--24. DOI:https://doi.org/10.1145/2688471.2688481.Google ScholarGoogle Scholar
  6. Blanchard, J., Gardner-McCune, C. and Anthony, L. 2019. Effects of Code Representation on Student Perceptions and Attitudes Toward Programming. 2019 IEEE Symposium on Visual Languages and Human-Centric Computing (2019), 127--131.Google ScholarGoogle Scholar
  7. Blanchard, J., Gardner-McCune, C. and Anthony, L. 2019. Amphibian: Dual-Modality Representation in Integrated Development Environments. Proceedings of the 2019 IEEE Blocks and Beyond Workshop (Blocks and Beyond) (2019).Google ScholarGoogle ScholarCross RefCross Ref
  8. Brainerd, C.J. 1978. Piaget's Theory of Intelligence. Prentice Hall.Google ScholarGoogle Scholar
  9. Brown, N.C.C., Mönig, J., Bau, A. and Weintrop, D. 2016. Panel: Future Directions of Block-based Programming. Proceedings of the 47th ACM Technical Symposium on Computing Science Education (2016), 315--316.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Cooper, S., Dann, W. and Pausch, R. 2000. Alice: a 3-D tool for introductory programming concepts. Journal of Computing Sciences in Colleges. 15, 5 (2000), 107--116. DOI:https://doi.org/10.1145/1953163.1953243.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Cooper, S., Dann, W. and Pausch, R. 2003. Teaching objects-first in introductory computer science. ACM SIGCSE Bulletin. 35, 1 (2003), 191--195. DOI:https://doi.org/10.1145/792548.611966.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Corney, M., Teague, D., Ahadi, A. and Lister, R. 2012. Some Empirical Results for Neo-Piagetian Reasoning in Novice Programmers and the Relationship to Code Explanation Questions. 14th Australasian Computing Education Conference (2012), 77--86.Google ScholarGoogle Scholar
  13. Gobet, F., Lane, P.C.R., Croker, S., Cheng, P.C.-H., Jones, G., Oliver, I. and Pine, J.M. 2001. Chunking mechanisms in human learning. TRENDS in Cognitive Sciences. 5, 6 (2001), 236--243. DOI:https://doi.org/10.1016/S1364--6613(00)01662--4.Google ScholarGoogle ScholarCross RefCross Ref
  14. Goode, J. and Margolis, J. 2011. Exploring Computer Science: A Case Study of School Reform. ACM Transactions on Computing Education. 11, 2 (2011), 1--16. DOI:https://doi.org/10.1145/1993069.1993076.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Henriksen, P. and Kolling, M. 2004. Greenfoot: Combining Object Visualization with Interaction. Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications - OOPSLA '04. (2004), 73--82. DOI:https://doi.org/10.1145/1028664.1028701.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Hsu, K.C. 1996. Developing Programming Environments for Programmable Bricks. Ph.D. Dissertation. Massachusetts Institute of Technology, Cambridge, MA.Google ScholarGoogle Scholar
  17. Kaleliolu, F. 2015. A new way of teaching programming skills to K-12 students: Code.org. Computers in Human Behavior. 52, (2015), 200--210. DOI:https://doi.org/10.1016/j.chb.2015.05.047.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Kelleher, C. and Pausch, R. 2005. Lowering the Barriers to Programming?: a survey of programming environments and languages for novice programmers. ACM Computing Surveys. 37, 2 (2005), 83--137. DOI:https://doi.org/10.1145/1089733.1089734.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Kölling, M. 2008. Using BlueJ to Introduce Programming. Reflections on the Teaching of Programming. Springer-Verlag. 98--115.Google ScholarGoogle Scholar
  20. Lister, R. 2011. Concrete and Other Neo-Piagetian Forms of Reasoning in the Novice Programmer. Proceedings of the Thirteenth Australasian Computing Education Conference (2011), 9--18.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Lister, R. 2011. COMPUTING EDUCATION RESEARCH: Programming, syntax and cognitive load. ACM Inroads.Google ScholarGoogle Scholar
  22. Malan, D.J. and Leitner, H.H. 2007. Scratch for budding computer scientists. ACM SIGCSE Bulletin. 39, 1 (2007), 223--227. DOI:https://doi.org/10.1145/1227504.1227388.Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Maloney, J., Rusk, N., Burd, L., Silverman, B., Kafai, Y., Resnick, M., Rusk, N., Silverman, B. and Resnick, M. 2004. Scratch: A sneak preview. Proceedings - Second International Conference on Creating, Connecting and Collaborating Through Computing. (2004), 104--109. DOI:https://doi.org/10.1109/C5.2004.1314376.Google ScholarGoogle ScholarCross RefCross Ref
  24. Meerbaum-Salant, O. 2010. Learning computer science concepts with scratch. ICER '10: Proceedings of the Sixth international workshop on Computing education research. (2010), 69--76. DOI:https://doi.org/10.1145/1839594.1839607.Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Miller, G.A. 1956. The magical number seven, plus or minus two: Some limits on our capacity for processing information. The Psychological Review. 63, 2 (1956), 81--97.Google ScholarGoogle ScholarCross RefCross Ref
  26. Nachar, N. 2008. The Mann-Whitney U: A Test for Assessing Whether Two Independent Samples Come from the Same Distribution. Tutorials in Quantitative Methods for Psychology. 4, 1 (2008), 13--20. DOI:https://doi.org/10.20982/tqmp.04.1.p013.Google ScholarGoogle ScholarCross RefCross Ref
  27. Parker, M.C. and Guzdial, M. 2016. Replication, Validation, and Use of a Language Independent CS1 Knowledge Assessment. Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education (2016), 93--101.Google ScholarGoogle Scholar
  28. Teague, D. 2015. Neo-Piagetian Theory and the Novice Programmer. Ph.D. Dissertation. Queensland University of Technology, Brisbane, Australia.Google ScholarGoogle Scholar
  29. Teague, D., Comey, M., Ahadi, A., Lister, R., Corney, M., Ahadi, A. and Lister, R. 2013. A Qualitative Think Aloud Study of the Early Neo-Piagetian Stages of Reasoning in Novice Programmers. Proceedings of the Fifteenth Australasian Computing Education Conference (2013), 87--95.Google ScholarGoogle Scholar
  30. Teague, D. and Lister, R. 2014. Programming: reading, writing and reversing. Proceedings of the 2014 conference on Innovation & technology in computer science education - ITiCSE '14. (2014), 285--290. DOI:https://doi.org/10.1145/2591708.2591712.Google ScholarGoogle Scholar
  31. Tharp, A.L. 1982. Selecting the "right" programming language. Proceedings of the thirteenth SIGCSE technical symposium on Computer science education (1982), 151--155.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. The Joint Task Force on Computing Curricula - ACM/IEEE-Computer Society 2013. Computer Science Curricula 2013: Curriculum Guidelines for Undergraduate Degree Programs in Computer Science.Google ScholarGoogle Scholar
  33. Weintrop, D. 2016. Modality Matters: Understanding the Effects of Programming Language Representation in High School Computer Science Classrooms. Ph.D. Dissertation. Northwestern University, Evanston, IL.Google ScholarGoogle Scholar
  34. Weintrop, D. and Holbert, N. 2017. From Blocks to Text and Back: Programming Patterns in a Dual-modality Environment. Proceedings of the 48th ACM SIGCSE Technical Symposium on Computer Science Education (SIGCSE '17). (2017). DOI:https://doi.org/10.1145/3017680.3017707.Google ScholarGoogle Scholar
  35. Weintrop, D. and Wilensky, U. 2015. To block or not to block" That is the question. Proceedings of the 14th International Conference on Interaction Design and Children. (2015), 199--208. DOI:https://doi.org/10.1016/j.jtcvs.2015.01.023.Google ScholarGoogle Scholar
  36. Weintrop, D. and Wilensky, U. 2016. Bringing blocks-based programming into high school computer science classrooms. Annual Meeting of the American Educational Research Association (2016).Google ScholarGoogle Scholar
  37. Wing, J.M., Jeannette, V. and Wing, J.M. 2006. Computational thinking. Communications of the ACM. 49, 3 (2006), 33--35. DOI:https://doi.org/10.1145/1118178.1118215.Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. IntelliJ IDEA: https://www.jetbrains.com/idea/.Google ScholarGoogle Scholar

Index Terms

  1. Dual-Modality Instruction and Learning: A Case Study in CS1

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!