488
Views
0
CrossRef citations to date
0
Altmetric
Research Article

Learning to program as empirical inquiry: using a conversation perspective to explore student programming processes

ORCID Icon &
Received 05 Jul 2022, Accepted 29 Nov 2023, Published online: 07 Dec 2023

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
  • Andersen, R., Mørch, A. I., & Litherland, K. T. (2022). Collaborative learning with block-based programming: Investigating human-centered artificial intelligence in education. Behaviour & Information Technology, 41(9), 1830–1847. https://doi.org/10.1080/0144929X.2022.2083981
  • Arnseth, H. C., & Ludvigsen, S. (2006). Approaching institutional contexts: Systemic versus dialogic research in CSCL. International Journal of Computer-Supported Collaborative Learning, 1(2), 167–185. https://doi.org/10.1007/s11412-006-8874-3
  • Barab, S., & Squire, K. (2004). Design-based research: Putting a stake in the ground. Journal of the Learning Sciences, 13(1), 1–14. https://doi.org/10.1207/s15327809jls1301_1
  • Bell, T., Alexander, J., Freeman, I., & Grimley, M. (2009). Computer science unplugged: School students doing real computing without computers. The New Zealand Journal of Applied Computing and Information Technology, 13(1), 20–29.
  • Bjerknes, G., Bratteteig, T., & Espeseth, T. (1991). Evolution of finished computer systems. Scandinavian Journal of Information Systems, 3(1), 25–45.
  • Bocconi, S., Chioccariello, A., Kampylis, P., Dagienė, V., Wastiau, P., Engelhardt, K. & Stupurienė, G. (2022). Reviewing computational thinking in compulsory education: State of play and practices from computing education. Publications Office of the European Union.
  • Braun, V., & Clarke, V. (2012). Thematic analysis. In H. Cooper, P. M. Camic, D. L. Long, A. T. Panter, D. Rindskopf, & K. J. Sher (Eds.), APA handbooks in psychology®. APA handbook of research methods in psychology (Vol. 2, pp. 57–71). American Psychological Association.
  • 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, Vol. 1, Vancouver, 13-17 April 2012, 25 p. http://scratched.gse.harvard.edu/ct/files/AERA2012.pdf
  • Cutts, Q., Esper, S., Fecho, M., Foster, S. R., & Simon, B. (2012). The abstraction transition taxonomy: Developing desired learning outcomes through the lens of situated cognition. In Proceedings of the ninth annual international conference on International computing education research (ICER ’12). Association for Computing Machinery, New York, NY, USA, 63–70. https://doi.org/10.1145/2361276.2361290
  • Dahn, M., & DeLiema, D. (2020). Dynamics of emotion, problem solving, and identity: Portraits of three girl coders. Computer Science Education, 30(3), 362–389. https://doi.org/10.1080/08993408.2020.1805286
  • Denning, P. J., & Tedre, M. (2021). Computational thinking: A disciplinary perspective. Informatics in Education, 20(3), 361–390. https://doi.org/10.15388/infedu.2021.21
  • Derry, S. J., Pea, R. D., Barron, B., Engle, R. A., Erickson, F., Goldman, R., Hall, R., Koschmann, T., Lemke, J. L., Sherin, M. G., & Sherin, B. L. (2010). Conducting video research in the learning sciences: Guidance on selection, analysis, technology, and ethics. Journal of the Learning Sciences, 19(1), 3–53. https://doi.org/10.1080/10508400903452884
  • Dewey, J. (1938). Logic: The theory of inquiry. Henry Holt and Company.
  • Du Boulay, B. (1989). Some difficulties of learning to program. In E. Soloway & J. C. Spohrer (Eds.), Studying the novice Programmer (pp. 283–300). Psychology Press.
  • Fonteyn, M. E., Kuipers, B., & Grobe, S. J. (1993). A description of think aloud method and protocol analysis. Qualitative Health Research, 3(4), 430–441. https://doi.org/10.1177/104973239300300403
  • Furberg, A., & Silseth, K. (2022). Invoking student resources in whole-class conversations in science education: A sociocultural perspective. Journal of the Learning Sciences, 31(2), 278–316. https://doi.org/10.1080/10508406.2021.1954521
  • Grover, S., Pea, R., & Cooper, S. (2015). Designing for deeper learning in a blended computer science course for middle school students. Computer Science Education, 25(2), 199–237. https://doi.org/10.1080/08993408.2015.1033142
  • Guenaga, M., Eguíluz, A., Garaizar, P., & Gibaja, J. (2021). How do students develop computational thinking? Assessing early programmers in a maze-based online game. Computer Science Education, 31(2), 259–289. https://doi.org/10.1080/08993408.2021.1903248
  • Hao, Q., Smith Iv, D. H., Ding, L., Ko, A., Ottaway, C., Wilson, J., Arakawa, K. H., Turcan, A., Poehlman, T., & Greer, T. (2022). Towards understanding the effective design of automated formative feedback for programming assignments. Computer Science Education, 32(1), 105–127. https://doi.org/10.1080/08993408.2020.1860408
  • Hermans, F. (2020). Hedy: A gradual language for programming Education. In Proceedings of the 2020 ACM Conference on International Computing Education Research (ICER ’20). Association for Computing Machinery, New York, NY, USA, 259–270. https://doi.org/10.1145/3372782.3406262
  • Jenkins, C. W. (2017). Classroom talk and computational thinking. International Journal of Computer Science Education in Schools, 1(4), 3–13. https://doi.org/10.21585/ijcses.v1i4.15
  • Jordan, B., & Henderson, A. (1995). Interaction analysis: Foundations and practice. Journal of the Learning Sciences, 4(1), 39–103. https://doi.org/10.1207/s15327809jls0401_2
  • Kajamaa, A., & Kumpulainen, K. (2020). Students’ multimodal knowledge practices in a makerspace learning environment. International Journal of Computer-Supported Collaborative Learning, 15(4), 411–444. https://doi.org/10.1007/s11412-020-09337-z
  • Kohn, T. (2019). The Error Behind The Message: Finding the Cause of Error Messages in Python. In Proceedings of the 50th ACM Technical Symposium on Computer Science Education (SIGCSE ’19). Association for Computing Machinery, New York, NY, USA, 524–530. https://doi.org/10.1145/3287324.3287381
  • Lemke, J. L. (2011). Analyzing verbal data: Principles, methods, and problems. In B. Fraser, K. Tobin, & C. McRobbie (Eds.), Second international handbook of science education (Vol. 24). Springer International Handbooks of Education. https://doi.org/10.1007/978-1-4020-9041-7_94.
  • Lister, R., Simon, B., Thompson, E., Whalley, J. L., & Prasad, C. (2006). Not seeing the forest for the trees: Novice programmers and the SOLO taxonomy. ACM SIGCSE Bulletin, 38(3), 118–122. https://doi.org/10.1145/1140123.1140157
  • Litherland, K., Kluge, A., & Mørch, A. I. (2021, September). Interactive screencasts as learning tools in introductory programming. In European Conference on Technology Enhanced Learning (pp. 342–346). Cham: Springer International Publishing.
  • Liu, Z., Zhi, R., Hicks, A., & Barnes, T. (2017). Understanding problem solving behavior of 6–8 graders in a debugging game. Computer Science Education, 27(1), 1–29. https://doi.org/10.1080/08993408.2017.1308651
  • Luxton-Reilly, A., Albluwi, I., Becker, B. A., Giannakos, M., Kumar, A. N., Ott, L., Paterson, J., Scott, M. J., Sheard, J., & Szabo, C. (2018). Introductory programming: A systematic literature review. In Proceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education (ITiCSE 2018 Companion). Association for Computing Machinery, New York, NY, USA, 55–106. https://doi.org/10.1145/3293881.3295779
  • Lye, S. Y., & Koh, J. H. L. (2014). Review on teaching and learning of computational thinking through programming: What is next for K-12? Computers in Human Behavior, 41, 51–61. https://doi.org/10.1016/j.chb.2014.09.012
  • McCauley, R., Fitzgerald, S., Lewandowski, G., Murphy, L., Simon, B., Thomas, L., & Zander, C. (2008). Debugging: A review of the literature from an educational perspective. Computer Science Education, 18(2), 67–92. https://doi.org/10.1080/08993400802114581
  • Moreno-León, J., Robles, G. & Román-González, M. (2015). Dr. Scratch: Automatic analysis of scratch projects to assess and foster computational thinking. RED. Revista de Educación a Distancia, (46), 1–23.
  • Moskal, A. C. M., & Wass, R. (2019). Interpersonal process recall: A novel approach to illuminating students’ software development processes. Computer Science Education, 29(1), 5–22. https://doi.org/10.1080/08993408.2018.1542190
  • Muller, O., Ginat, D., & Haberman, B. (2007, June). Pattern-oriented instruction and its influence on problem decomposition and solution construction. In Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education, Dundee, Scotland (pp. 151–155).
  • Newell, A., & Simon, H. A. (1976). Computer science as empirical inquiry: Symbols and search. Communications of the ACM, 19(3), 113–126. https://doi.org/10.1145/360018.360022
  • OpenAI. (2022). ChatGpt: Optimizing Language Models for Dialogue. https://openai.com/blog/chatgpt/
  • Papert, S. A. (1980). Mindstorms: Children, computers, and powerful ideas. Basic books.
  • Parsons, D., & Haden, P. (2006, January). Parson’s programming puzzles: A fun and effective learning tool for first programming courses. In Proceedings of the 8th Australasian Conference on Computing Education, Hobart, Australia (Vol. 52, pp. 157–163).
  • Patton, M. Q. (2002). Two decades of developments in qualitative inquiry: A personal, experiential perspective. Qualitative Social Work, 1(3), 261–283. https://doi.org/10.1177/1473325002001003636
  • Pea, R. D. (1986). Language-Independent conceptual “Bugs” in novice programming. Journal of Educational Computing Research, 2(1), 25–36. https://doi.org/10.2190/689T-1R2A-X4W4-29J2
  • Perrenet, J., Groote, J. F., & Kaasenbrood, E. (2005). Exploring students’ understanding of the concept of algorithm: Levels of abstraction. ACM SIGCSE Bulletin, 37(3), 64–68. https://doi.org/10.1145/1151954.1067467
  • Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., Millner, A., Rosenbaum, E., Silver, J., Silverman, B., & Kafai, Y. (2009). Scratch: Programming for all. Communications of the ACM, 52(11), 60–67. https://doi.org/10.1145/1592761.1592779
  • Robins, A. (2019). Novice programmers and introductory programming. In S. Fincher & A. Robins (Eds.), The Cambridge Handbook of Computing Education Research (Cambridge Handbooks in psychology (pp. 327–376). Cambridge University Press. https://doi.org/10.1017/9781108654555.013
  • Robins, A., Rountree, J., & Rountree, N. (2003). Learning and teaching programming: A review and discussion. Computer Science Education, 13(2), 137–172. https://doi.org/10.1076/csed.13.2.137.14200
  • Schön, D. A. (1992). The theory of inquiry: Dewey’s legacy to Education. Curriculum Inquiry, 22(2), 119–139. https://doi.org/10.2307/1180029
  • Schulte, C. (2008). Block Model: An educational model of program comprehension as a tool for a scholarly approach to teaching. In Proceedings of the fourth international workshop on computing education research, Sydney, Australia (149–160).
  • Sentance, S., Waite, J., & Kallia, M. (2019). Teaching computer programming with PRIMM: A sociocultural perspective. Computer Science Education, 29(2–3), 136–176. https://doi.org/10.1080/08993408.2019.1608781
  • Simon, H. A. (2019). The Sciences of the artificial, reissue of the third edition with a new introduction by John Laird. MIT press.
  • Soloway, E. (1986). Learning to program= learning to construct mechanisms and explanations. Communications of the ACM, 29(9), 850–858. https://doi.org/10.1145/6592.6594
  • Tsan, J., Lynch, C. F., & Boyer, K. E. (2018). “Alright, what do we need?”: A study of young coders’ collaborative dialogue. International Journal of Child-Computer Interaction, 17, 61–71. https://doi.org/10.1016/j.ijcci.2018.03.001
  • Turkle, S., & Papert, S. (1990). Epistemological pluralism: Styles and voices within the computer culture. Signs: Journal of Women in Culture and Society, 16(1), 128–157. https://doi.org/10.1086/494648
  • von Hausswolff, K. (2021). Practical thinking while learning to program – novices’ experiences and hands-on encounters. Computer Science Education, 32(1), 128–152. https://doi.org/10.1080/08993408.2021.1953295
  • Vygotsky, L. S. (1980). Mind in society: The development of higher psychological processes. Harvard university press.
  • Weintrop, D., Wise Rutstein, D., Bienkowski, M., & McGee, S. (2021). Assessing computational thinking: An overview of the field. Computer Science Education, 31(2), 113–116. https://doi.org/10.1080/08993408.2021.1918380
  • Wertsch, J. V. (1998). Mind as action. Oxford university press.
  • Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49(3), 33–35. https://doi.org/10.1145/1118178.1118215
  • Xie, B., Loksa, D., Nelson, G. L., Davidson, M. J., Dong, D., Kwik, H., Tan, A. H., Hwa, L., Li, M., & Ko, A. J. (2019). A theory of instruction for introductory programming skills. Computer Science Education, 29(2–3), 205–253. https://doi.org/10.1080/08993408.2019.1565235
  • Yin, R. K. (2018). Case study research and applications: Design and methods (6th ed.). Sage.Zakaria.
  • Zakaria Z, Vandenberg J, Tsan J, Boulden D Cadieux, Lynch C F, Boyer K Elizabeth and Wiebe E N. (2022). Two-Computer Pair Programming: Exploring a Feedback Intervention to improve Collaborative Talk in Elementary Students. Computer Science Education, 32(1), 3–29. 10.1080/08993408.2021.1877987