Bridging a gap: in search of an analytical tool capturing teachers’ perceptions of their own teaching

Abstract

Computing and computers are introduced in school as important examples of technology, sometimes as a subject matter of their own, and sometimes they are used as tools for other subjects. All in all, one might even say that learning about computing and computers is part of learning about technology. Lately, many countries have implemented programming in their curricula as a means to address society’s dependence on, and need for programming knowledge and code. Programming is a fairly new school subject without educational traditions and, due to the rapid technological development, in constant change. This means that most programming teachers must decide for themselves what and how to teach. In this study, programming teachers’ teaching is studied. With the aim of exploring the connection/possible gap between teacher’s intentions and the teacher’s instructional practice, an expansion of the conceptual apparatus of phenomenography and variation theory is tested. In the article, phenomenography and variation theory and the suggested supplementary theoretical tool (Georg Henrik von Wright’s model of logic of events) are briefly presented and then deployed upon one selected case. Findings reveal that teachers’ intentions (reflected in their actions) include an emphasis (of teachers’ side) on the importance of balancing theory and practice, using different learning strategies, encouraging learning by trial-and-error and fostering collaboration between students for a deeper understanding of concepts. In conclusion, logic of events interpretations proves to be useful as a complementary tool to the conceptual apparatus of phenomenography.

Keywords

Notes

Acknowledgments

We gratefully acknowledge financial support from the Swedish research council.

Appendix

The teacher case ‘Claudio’

He has been working as a university teacher for many years and has received a teaching excellence award. The group of students consists of approximately 40 students, and during laboratory work there are two teaching assistants helping him with students’ questions. The laboratory material (tasks) is distributed on-line. A common pool of material is created by the students in advance before the actual session.

The educational setting

The group of students in our investigation are first-year students and, according to the teacher, not used to theoretical studies. There are, however, a minority of students with a special interest in a theoretical approach for learning. The student group is special in that they are studying to become teachers as well as engineers, wherefore it could be expected that they are interested in questions concerning teaching and learning. For a balance between students holding a theoretical approach as well as a practical approach, he tries to match one of each category into pairs to help them draw from each other’s learning approaches. The matchmaking is considered important as it is believed to save some time in the individuals’ learning processes; instead of losing valuable time in solely reading the course literature or solely doing coding, both categories of students will presumably reach a deeper level of understanding this way.

The laboratory work is the second in a sequence where the students work on methods. In advance of the laboratory session, each student has prefabricated a couple of functions to contribute to a repository for other students to use during the laboratory work. To attend the session, the students have to answer a couple of theory-focused tasks in relation to the concept of method. The preliminary objective for the laboratory is to learn how to write and use a method and associate features as parameters and return values. In the book and during lectures, the students have been exposed to ‘[methods] with and without parameters, with and without return value, with different data types on the parameters and the return value, and different combinations of these’. According to the teacher, there is a twofold purpose behind the laboratory, in Claudio’s own wordings he emphasise:

the details [syntax] in the actual programming language…, but also the concepts like [method], parameters and return value. Generic concepts useful in all different programming languages.

Students are supposed to pick five methods done by peers, according to a requirement specification, and construct their own final program. Such an instructional approach holds important implications for learning, as supposedly the work done by peers is constrained by faults and is not always compatible within a new context. Students are therefore forced to elaborate on the concepts of scope, parameter and return value to make their code work. Some students are slow starters, and time is short in the course. Everybody therefore has to come ‘on-board’. The laboratory task is designed to engage as many students as possible right from the beginning of the course. It becomes a peer-pressure situation where every student has to contribute with their methods to a repository of methods. The laboratory setting will therefore foster good habits and collaboration, as it is hoped students will understand that ‘somebody else is dependent on what I code’.

Expected knowledge, learning and difficulties

In the situation of tutoring students, Claudio expresses his instructional idea of not telling the students the errors in and drawbacks of their code. A common situation is that ‘the students have read the theory and they believe they understand, as their programme works alright, and e as teachers have opinions about the way of structuring the code’. It is therefore considered important for the students to discover by themselves constraints and bad code, which hopefully will lead them to a deeper understanding of concepts like methods and scope:

That’s the reason, when they are in the process of writing their own functions, for the first time, they commonly do not understand the idea implicit in using parameters and return values. It could be that they are writing a function together with some variables in the function header, but still they apply global variables in their functions, forgetting the return value, … so if they are forced to use somebody else’s function, that been written by somebody else, the global variables will not be of any use. It will become wrong. Therefore this [approach] is useful, where they are constrained by somebody else’s work. (In interview with Claudio)

This is something essential during the whole laboratory session. According to the teacher, students perceive the concept of methods frustrating, as it breaks the ‘linearity of thinking’ when a portion of the code is extracted and delegated a specific purpose. The quotation describes the teacher’s idea of using somebody else’s code to make the students aware of programming principles and the conceptual idea of using methods in another context. To foster such an understanding right from the start, the concept of method is introduced early on to offer much practice with it as well as time with the concept.

Harris, L. R. (2011). Phenomenographic perspectives on the structure of conceptions: The origins, purposes, strengths, and limitations of the what/how and referential/structural frameworks. Educational Research Review,6, 109–124.CrossRefGoogle Scholar

Hickerson, R. (2007). The history of intentionality: theories of consciousness from Brentano to Husserl. London: Continuum.Google Scholar

Kant, I. (1998). The Cambridge edition of the works of Immanuel Kant. Critique of pure reason. Cambridge: Cambridge University Press.Google Scholar

Larsson, J., & Holmström, I. (2007). Phenomenographic or phenomenological analysis: does it matter? Examples from a study on anaesthesiologists’ work. International Journal of Qualitative Studies in Health and Well-being,2, 55–64.CrossRefGoogle Scholar