Learning to Program - Programming to Learn: Technology Supporting Digital, Physical and Social Learning in Schools Kristina Litherland University of Oslo, P.O Box 1092, Blindern, 0312 Oslo, Norway Abstract The purpose of this project is to provide a deeper understanding of programming pedagogic practices by studying two cases of programming in school, providing two different entry points to learning of and with computer programming. The cases represent two approaches to technology enhanced learning of programming, namely screencasts and so-called “makerspaces”, but also how programming as a technology itself may enhance learning. Using qualitative research methods, my aim is to develop theory and practice related to programming pedagogy. Preliminary results show that both screencasts and makerspaces are potentially useful tools for learning programming, and that programming may be a useful learning tool in itself. However, these findings need to be explored and refined further. Keywords 1 Computer programming, interdisciplinarity, screencasts, makerspaces, socio-cultural perspective 1. Introduction knowledge on how this is best done [2]. On the other hand, programming may provide the opportunity to engage students in The autumn of 2020 marked the starting interdisciplinary activities and problem solving point of the new national curriculum in in several subjects [3]. Norwegian primary and secondary education The Nordic approach to programming in (years 1 to 10), known as “the Renewal of school, where programming is integrated into Subjects” [1, author’s translation]. One of the other subjects [4], is fundamentally different to new aspects of the curriculum is the explicit approaches seen in other Western countries’ inclusion of computer programming in several educational systems where programming is subjects, specifically mathematics, science, organised as separate subjects (see e.g. [5]). The music, and arts and craft; all of which are new, Norwegian curriculum and the existing mandatory subjects for all students. Computer programming courses provide an opportunity to programming has been an elective subject in study programming for the subjects versus Norwegian secondary schools since 2016, but programming as a subject. One rationale for the with the new curriculum, all students are importance of learning how to program at a obliged to learn to program as part of their basic level is the idea that all members of mathematics course so they can successfully society need an understanding of the role of use programming as a tool in both mathematics programming in the digital world that and other subjects. This provides several surrounds us (e.g. what is an algorithm and how challenges, but also some opportunities. One can it be used to deliver personalised ads). such challenge is that teachers must learn both However, not all students need professional computer programming and how to integrate it knowledge on how to create industrial-strength into their subjects, even though there is little computer programs. In the Nordic countries, Proceedings of the Doctoral Consortium of Sixteenth European Conference on Technology Enhanced Learning, September 20–21, 2021, Bolzano, Italy (online). EMAIL: Kristina.litherland@iped.uio.no ORCID: 0000-0001-9694-1291 ©️ 2020 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). CEUR Workshop Proceedings (CEUR-WS.org) there is an emphasis on programming as a learning, which considers learning as bridge between subject domains, e.g. fundamentally social [8]. A key concept of the mathematics and natural science, and statistics sociocultural perspective is that tools mediate and social science. learning. According to Vygotsky [8], language The aim of this PhD-project is to provide a itself is the most powerful mediating tool, and deeper understanding of programming researchers should therefore give attention to pedagogic practices in Norwegian schools by language use when studying learning. studying two cases providing two entry points. However, language is not the only tool involved The cases represent different approaches to in learning computer programming; therefore, technology enhanced learning of and with also other (computer mediated and non- programming described in detail later in this computational) tools and artefacts will be paper. Note that my project concerns both included as objects for analysis. Computer learning of conceptual knowledge of programming is about creating code a computer programming and other subjects, and how can read, which is a technological artefact. technological tools can support this learning. I However, humans also read, modify, use, and view programming skills themselves as write code, often based on other people’s code. technological learning tools. I argue that this makes programming an The PhD-project overall is guided by the inherently social activity, and that following research question with two sub- programming should be treated as such. This questions, which, when combined, will provide idea of sociality is in line with Vygotsky’s view a basis for elaborating on the main research of learning. question. How do computer programming Computer science (CS) education is a broad classes and integrated subject/computing field and includes CS education at all levels in classes compare as interdisciplinary learning the educational system: From elementary arenas? school to higher education. Nygaard [9] claims 1. How does interactive screencast the term computer science is too narrow, as it technology support digital and social places too much emphasis on the computer learning practices in computer programming itself and does not cover all (e.g. social) aspects classes? of the field. I choose to use the term 2. How are learning processes supported programming pedagogy, as using a verb by programming as an intermediate tool (programming) makes the term more between physical making and conceptual process/action oriented, to cover the field of knowledge in a digital science classroom? teaching and learning to program in a wide sense, including programming concepts, Using a qualitative, primarily bottom-up practices and perspectives [10]. approach to explore my research questions, my This theoretical perspective will frame my contribution will be to improve the analysis by providing a focal point on understanding of the two approaches to knowledge development over cognitive programming knowledge development in assessment. Potential findings relate to Norwegian schools. Hence, the aim of the observed classroom episodes where the use of project is not to make statistically generalizable tools (e.g. language, gestures, and digital tools) claims, but to give reliable and valid are involved in this development. Since perspectives of development processes programming in Norwegian schools is a new observed within the cases at hand. I hope that phenomenon, there is a need to better the project will reveal both challenges and understand what is happening during opportunities that are relevant for developing programming classes/classes with the field of programming pedagogy in school programming and what the potentials are. further, and how technical tools are involved in these processes. 3. Programming in school 2. Theoretical framework The idea of using programming in school is not new and often dated to Seymour Papert’s The theoretical framework for the project is 1980 book Mindstorms [3] and his concept of grounded in the sociocultural perspective on “Turtle Geometry”. At the time, Papert and his team at Massachusetts Institute of Technology a high focus on programming languages and had recently developed a text-based environments, but not on what concepts, ideas, programming language called Logo. Papert had or practices the learners are expected to know. grand ideas about how children could learn In the Norwegian curriculum, concepts such as mathematics and geometry hands-on, but also variables, loops and if-statements are how they could learn to think, by using Logo mentioned explicitly, while a more basic and constructing programs [11]. However, later concept such as sequencing is not. In addition, research has criticised some of the claims by no practices, such as debugging, are included. finding that a programmer’s knowledge and Lye and Koh [10] found that research on experience does not always develop into computational concepts dominated over cognitive/higher order skills (see e.g. [12]). computational practices (e.g. how students Mitch Resnick, one of Papert’s students and solve programming problems), which again leader of the team that developed the most well- dominated over computational perspectives known block-based programming language (e.g. how students talk about what used in education, Scratch, is a champion for an programming means to them or the society). interest-driven approach as a programming Lye and Koh suggest that both teachers and pedagogy [13]. Resnick’s idea is that children researchers should focus more on practices and can develop what is often referred to as 21st perspectives. century skills, such as creativity and Interestingly, from a Nordic perspective, collaboration skills, through open ended there is little research on what concepts across programming activities, which involve very fields (including, but not limited to little upfront teaching. The success of this mathematics, natural science, arts and crafts, approach, according to Resnick, relies on the and music) that are suitable to combine with elimination of complicated programming programming, or whether the integration of syntax, which is the aim of block-based programming with these fields is more a programming. question of practice integration. From Papert to Resnick the rationale has Modern programming pedagogy is moved from being quite specific (mathematics influenced by several, sometimes competing, and thinking) to talking about more general approaches to the topic of how programming skills. The Nordic model of programming can should be taught [2]. One of the main questions be placed somewhere between the two, as is how to structure programming classes. programming is placed within subjects but are Sentance, Waite & Kallia [15] have identified meant to develop both domain specific and that one of the most common ways is through general skills. Waite [2] mentions traditional lecture style lessons, and also that programming for the subject as a specific there are several issues with this teaching style. context for programming that needs a specific Moving away from the lecture style approach pedagogy. She uses as example the dilemma of gives way for more student-active approaches, how to help students both connect and where students can be encouraged to talk and differentiate between programming and the use other tools. subject in question. One particular challenge in In the programming industry, using spoken this regard is how symbols like punctuation language to debug code was popularised under marks or equals signs are used in specific ways the term “rubber-duck debugging” back in 2000 in programming languages that are not [16]. Little research has been done in this field necessarily compatible with other fields, such of “talking about code” and reading it aloud in as mathematics. professional and educational settings. Based on In recent years, a growing number of the premises of coding being a social activity researchers have studied programming [9] and that language is one of the most pedagogy. The nominal paper by Wing [6] in important tools for learning [8], this is a gap in 2006 is typically credited as the source of the the literature. Some work has been done, current wave of programming in schools across however, and several researchers point to the the world. As a result of this wave, the field of importance of using spoken language to bridge programming in school has gotten an programming activities [10, 15, 17]. increasingly large mass of available tools and The few existing studies have promising resources (see e.g. [14]). This is also results. In their research on what they call code symptomatic for the field of research. There is phonology, Hermans, Swidan and Aivaloglou [18] found that there was a correlation between 4. Research design and method a student’s ability to read code consistently and accurately out load and their general This qualitative research project is based on programming knowledge. Kluge et al. [19] data from two cases that represent different found that students could present their own approaches to programming in Norwegian code using screencasts and that the schools. See Table 1 for reference. Both cases presentations provided a more detailed involve the empirical study of programming perspective of the students’ understanding than interventions in Norwegian schools, and follow the code would on its own. design-based research methodology [23]. Another student-active and interest driven The first case is situated in the elective approach is the use of makerspace methodology programming subjects in Norwegian secondary [20]. Makerspace methodology follows in the and upper secondary school, and the purpose of line of Papert’s learning theory, where students the case to explore the first and main research are thought to learn through the construction of questions. We employed a digital tool called physical and digital objects. Scrimba, which is an instructional tool, a code Throughout the past decades, we have seen editor, a screen recording tool, and a learning several ideas about what students can learn management system, and, in our case, a through programming. They include thinking research data collection tool. skills, subject specific and general skills, as Students and teachers from six schools well as to teach students about our “digital participated in the intervention. We explore the world”. However, most of the research on making and use of screencasts (screen programming is based on programming for the recordings) in different ways, for example to sake of programming, i.e. to educate structure lessons and in assessment. The professional developers. The Nordic approach screencasts capture the students’ programming assumes that programming can contribute to the activities as a process, including how the learning of other subjects. As is the case with students describe and discuss their code. many programming pedagogical topics in The second case involves underachieving school contexts, also the field of programming gifted/talented students attending a natural for the subjects is “underinvestigated” [17, p. science class intervention where they 42]. One of the most known cases of such incorporate programming and making in research is on Logo and mathematics [21], but science. The aim of this case is to explore the there are some more recent examples. second and main research questions. Potential The project ScratchMaths has shown participants are tested using the Wechsler promising results in using Scratch to teach Intelligence Scale for Children (WISC) test, to primary school children basic mathematics identify students who can be defined as skills [22]. In their approach, mathematical and underachieving gifted/talented students, but programming concepts were taught this is not emphasised in my PhD project. “simultaneously”, using subtle colour coding to During the intervention, the students are help students differentiate between the two invited to make digital and physical subjects and help them see the connections. programmed artefacts with the aim of This is an important point, as Mørch and developing understanding of natural science colleagues [20] found that students do not concepts. Approximately 40 students automatically connect programming concepts participated in the first iteration, and more are with the relevant school subject(s) if this is not recruited for the second iteration, which is explicitly pointed out to them. starting during the autumn of 2021. As presented in this section, the As both research projects are design based programming literature has several interesting projects, I aim to contribute to both theory lines of research. Since I am applying a development and the development of qualitative, explorative approach in this project, pedagogical practices that are more “hands on” and I am still at an early stage of my project, I useful for the practice community. prefer to keep an open mind as to what lines I will pursue later based on the affordances of my data. Table 1 where cameras are placed so that we capture Case comparison events on the students’ screens and the shared Case 1 Case 2 physical space between the students and their Student age 13-19 12-16 persons, enabling us to capture e.g. gestures and Programming how the students potentially move the shared Programming Programming laptop computer or other physical tools as learning rationale as subject between them. A table microphone ensures tool Elective good quality voice recordings. Elective course for Interviews held individually and/or in Context course in gifted groups using a semi-structured approach, may school students provide a meta-cognitive perspective. across schools The first case is formally concluded, Main Interactive meaning no more data is collected. Data Makerspace pedagogical screencast collection in the second case started during the technology tools technology autumn of 2020, and there is available data Video/audio from the pilot project that is relevant [20]. Video/audio recordings in Because of the Covid-19 pandemic, the recordings in classrooms, 2020/2021 academic year interventions in the classrooms, semi- second case were conducted digitally, semi- structures providing considerable challenges forcing all Data structured interviews, case participants to adapt. This has also affected collection interviews, screen my project and research questions. We have screencasts recordings started conducting the next iteration in a from from digital physically co-located classroom, which may screencasting classroom provide opportunities for comparing the software environment iterations and cases on even more conceptual N (students) 134 ~200 levels, which I have not started exploring as of now. 4.1. Data collection 4.2. Data analysis Data from both cases is/was collected using participant observation, screen recordings and The data will be analysed using a qualitative interviews. Observations are collected using approach. I will look at interactions themselves field notes (meta-data), video cameras, (i.e. the contents and organisation of microphones, and screen recording software. conversations and other social acts) using This will enable me to capture both what the interaction analysis (IA) [24]. Typically, this students are saying, with whom they are means to look for recurring and/or exceptional talking, how they use their bodies/gestures to “episodes” and sequences of turn taking communicate, what digital and physical objects contributing to meaning making, and they are interacting with as well as what they organising them into themes that conceptualise are constructing. It is vital that the students are the events in the episode [25]. However, as the encouraged to interact and work together in students are interacting with digital and order to capture these conversations. The physical tools and may be using gestures (both student assignments are designed for working physically and digitally) to communicate, these in pairs to assure that I may collect interaction actions are also considered parts of the data, but in the first case, there are also students interaction to analyse. This is in line with a who have worked alone and have recorded their Vygotskyan view on mediational tools as own, individual screencast explanations. essential parts of learning processes. In both cases, we used (or intend to use) a The primary data therefore consists of the voice- and tool-focused approach to video video observations and screen recordings, as recordings, informed by our theoretical these best capture the complex processes we are perspective. This is achieved by a particular studying. The interviews are a secondary data focus on the relative placement of video and source that may support or challenge what we audio recording hardware in the classroom, observe in the classrooms. As the two cases include relatively large researchers to ensure a level of inter-coder amounts of data (tens of hours of video data), it reliability. will be necessary to reduce the data to those that are most relevant for the research questions. 5. Preliminary results and This means that I will focus on data were the students are actively engaged in programming, discussion over episodes that are e.g. mainly teacher oriented or where the students are engaged in In this section, I will briefly describe my other types of activities. preliminary findings and discuss these and the Both the cases are parts of larger research current state of the project. I will frame this projects where other researchers employ discussion using the research questions, starting several analytical tools and data sources to with the sub-questions and moving on to the answer different research questions. My project main research question. differs in that I employ the same analytical tools Sub-question 1: How does interactive across the two cases. screencast technology support digital and social learning practices in computer programming classes? 4.3. Research quality In the first case, we are exploring affordances of different modes of using Although there is some overlap, the cases integrated screencast technology [19]. The have distinct takes on programming in school. most promising results include how making Instead of viewing this as mainly a challenge, screencast code presentations may create new the cases provide an opportunity to investigate learning opportunities for the students, as contrasting approaches to programming presented in our short-paper [26]. We have pedagogy. observed episodes where students work One challenge, particularly about collaboratively on developing code and how generalisation to the general population of switching to a screencast recording “mode” of students who are expected to learn working, e.g. creating a screencast as cultural programming within the mandatory subjects tool, changed how they talked, edited and tested following the new curriculum, is that the code. Recording a screencast is not simply a participants do not represent “typical students” representation of a learning process, but is in the Norwegian school, as they have all opted connected to particular cultural practices. This in to take part in the elective programming interrelationship between activity framing, talk, subjects. Furthermore, all the students in the code changes and other development actions second case belong to the group of will be explored further, and is especially underachieving gifted/talented students. This interesting for comparison with the case where brings about some methodological challenges, another level of abstraction is added, namely but also the opportunity to study programming the explicit goal of subject learning through with students that are likely to be motivated. It programming. is possible to assume the challenges we might Sub-question 2: How are learning processes experience with the participants can be even supported by programming as an intermediate bigger when programming is implemented in tool between physical making and conceptual mandatory education for everyone. knowledge in a digital science classroom? In the second case, the coronavirus Although the digital classroom of the Covid- pandemic had a big impact on the first iteration 19 pandemic has caused several problems such of the interventions. This has provided an as technical difficulties, students dropping out, opportunity to study the learning of science and changes to the activities in the intervention, concepts using digital tools such as “Microbits” we have seen signs of how programming may and programming, in a digital classroom, but be a bridge between the individual, concrete, there are challenges on how the data from the physical artefacts the students made, and the digital iteration will compare with the second social and digital classrooms where interactions round. and teaching took place. The students could not One way we ensure the research quality in manipulate other students’ physical artefacts or the complex case contexts, is by developing work together on creating common physical codes and then viewing data separately as artefacts as they would in a physical classroom, but they could share and manipulate code in the BETT2018 Steering Group (2018) online classroom environment [27]. I will doi:10.17471/54007. continue to explore the role of programming [5] N. C. Brown, S. Sentance, T. Crick, S. and screen sharing practices as tools for Humphreys, Restart: The resurgence of supporting the students’ learning. computer science in UK schools. ACM Main research question: How do computer Transactions on Computing Education 14 programming classes and integrated (2014): 1–22. subject/programming classes compare as [6] J. M. Wing, Computational thinking. learning arenas? Communications of the ACM 49 (2006): With this research question, I intend to 33–35. compare the two approaches to programming [7] A. V. Aho. Computation and (traditional approach, and Nordic approach), Computational Thinking. Ubiquity and explore in what ways they differ and how symposium (2011) doi: the interdisciplinarity of the Nordic approach is https://doi.org/10.1145/1922681.1922682 expressed through the students’ learning [8] L. S. Vygotsky, Mind in society: The processes, and how this differs from the development of higher psychological traditional approach. processes. Harvard university press, 1980. In some respects, the pandemic made the [9] K. Nygaard, Program development as a cases more similar, as the collaboration social activity. In IFIP Congress (1986): activities in both cases were, in large, mediated 189–198. by what the students saw and did on the screen. [10] S. Y. Lye, J. H. L. Koh, Review on Currently, data from the two cases are being teaching and learning of computational analysed separately, but I intend to do a thinking through programming: What is comparative analysis once I am more familiar next for K-12?. Computers in Human with the separate data sets. Behavior, 41 (2014): 51–61. Preliminary findings are mostly empirical, [11] I. E. Harel, S. E. Papert, Constructionism. but with deeper analysis, I hope to develop Ablex Publishing, 1991. these into more refined models or theories, that [12] R. E. Mayer, J. L. Dyck, W. Vilberg, may contribute both to the research field of Learning to program and learning to think: learning to program and programming to learn, what's the connection?. Communications but also the practice of how and why. of the ACM 29 (1986): 605–610. [13] M. Resnick, Lifelong kindergarten: 6. References Cultivating creativity through projects, passion, peers, and play. MIT press, 2017. [14] F. J. García-Peñalvo, J. Hughes, A. Rees, [1] Norwegian directorate of Education, the, I. Jormanainen, T. Toivonen, D. Reimann, Nye læreplaner – grunnskolen og M. Tuul, M. Virnes, Evaluation of existing gjennomgående fag vgo, 2019. URL: resources (study/analysis). Belgium: https://www.udir.no/laring-og- TACCLE3 Consortium. 2016 trivsel/lareplanverket/Nye-lareplaner-i- doi:10.5281/zenodo.163112 grunnskolen-og-gjennomgaende-fag-vgo. [15] S. Sentance, J. Waite, M. Kallia, Teaching [2] J. Waite, Pedagogy in teaching Computer computer programming with PRIMM: a Science in Schools: A Literature Review, sociocultural perspective. Computer 2018. URL: Science Education 29 (2019): 136–176. https://royalsociety.org/~/media/policy/pr [16] A. Hunt, D. Thomas, The Pragmatic ojects/computing-education/literature- Programmer. Boston: Addison-Wesley, review-pedagogy-in-teaching.pdf 2000. [3] S. Papert, Mindstorms: Children, [17] S. Grover, R. Pea, Computational thinking computers, and powerful ideas. Basic in K–12: A review of the state of the field. Books Inc, 1980. Educational researcher 42 (2013): 38–43. [4] S. Bocconi, A. Chioccariello, J. Earp, The [18] F. Hermans, A. Swidan, E. Aivaloglou, Nordic approach to introducing Code Phonology: an exploration into the Computational Thinking and vocalization of code, in: Proceedings of programming in compulsory education. the 26th Conference on Program Report prepared for the Nordic@ Comprehension, 2018, pp. 308–311. ACM. [19] A. Kluge, K. T. Litherland, P. H. Borgen, G. O. Langslet, Combining programming with audio explanations, in: Proceedings of the 11th International Conference on Education Technology and Computers, 2019, pp. 155–159. [20] A. I. Mørch, K. T. Litherland, R. Andersen, End-User Development Goes to School: Collaborative Learning with Makerspaces in Subject Areas. In International Symposium on End User Development, 2019, pp. 200–208. [21] I. E. Harel, S. E. Papert, Software design as a learning environment, Interactive learning environments 1 (1990): 1–32. [22] L. Benton, P. Saunders, I. Kalas, C. Hoyles, R. Noss, Designing for learning mathematics through programming: A case study of pupils engaging with place value. International journal of child- computer interaction 16 (2018): 68–76. [23] S. Barab, K. Squire, Design-based research: Putting a stake in the ground. The journal of the learning sciences 13 (2004): 1–14. [24] B. Jordan, A. Henderson, Interaction analysis: Foundations and practice, The journal of the learning sciences 4 (1995): 39–103. [25] V. Braun, V. Clarke, Using thematic analysis in psychology. Qualitative research in psychology 3 (2006): 77–101. [26] K. Litherland, A. Kluge, A. I. Mørch, Interactive Screencasts as Learning Tools in Introductory Programming, in: Proceedings of the 16th European Conference on Technology Enhanced Learning, 2021, pp. 342–346. [27] R. Andersen, A.I. Mørch, K. T. Litherland, Learning Domain Knowledge using Block-Based Programming: Design-Based Collaborative Learning, in: Proceedings of the 8th International Symposium on End- User Development, 2021, pp. 119–135.