As a teacher of computing applications I have found that the area my students struggle with the most is creating and using spreadsheet formulae and database queries. That is to say they struggle most where they have to apply mathematical formulae, which are by nature abstract, to a concrete task such as applying a 10% discount if certain conditions pertain. The ability to move seamlessly between abstract and concrete is not something all students possess. Piaget described the movement between concrete and formal operational thinking as a maturational process, with children only becoming capable of abstract thought at around 12 years of age. It is also thought that abstract thinking develops into adulthood as individuals gain more experience with it. This suggests that students need extensive scaffolding to help abstract thinking skills develop. It is also clear that it is difficult to generalise concepts across different contexts generally.
I have looked at the Semantic Wave Theory previously on this blog (eg. Maton, 2014), a framework drawn from Legitimation Code Theory, which shows how the movement between the abstract and highly condensed to the concrete, contextualised and simple can be used as a tool to show how meaning is being unpacked and re-packed within the classroom. Researchers have shown how successful teaching and learning depends on creating repeated movements between the two, describing semantic profiles.
The diagram above illustrates various semantic profiles, which will be instantly recognisable to any teacher. The high semantic flatline is when all discourse in the classroom remains at a general and abstract, very theoretical level. The low semantic flatline is when discourse is simple and practical. Clearly what is needed over time is movement between abstract and concrete, complex and simple, a wave-like graph with greater semantic range. Teachers need to help students understand complex, abstract ideas by unpacking the concepts using concrete examples, personal experience and metaphors. Students also need to learn how to repackage their understanding in more abstract academic language in their own words, and teachers need to carefully scaffold, this process.
Understanding semantic waves, helps to understand how best to scaffold spreadsheet formulae and database queries by finding strategies to strengthen and weaken semantic gravity and density as it is called, in other words to scaffold movement up or down the semantic wave. To do this requires an understanding of the relative strengths of semantic gravity and density in various computing applications. I have to say that this is in itself not an easy task. It seems to me that what appears to be a concrete, practical task for an experienced practitioner, often appears abstract and complex for the novice. This is perhaps just another way of saying that as we get used to traversing the gap between abstract and concrete we get better at doing it, and cease to notice it, or struggle with it. We operationalise abstract formulae without a second thought and it seems like a simple, concrete task to us. We need to try and see it from the perspective of the novice. The novice needs to bring together an understanding of what the computer needs to do expressed in plain language, the mathematical or logical language of the problem and the syntax of the application or programming language. And this process needs very careful scaffolding and support.
I have very recently come across a cognitive tool called the Abstraction Transition Taxonomy (Cutts et al, 2012). The illustration below comes from the paper cited and demonstrates one way of visualising the processes involved in coding a computer program, or indeed an excel spreadsheet.
This design process helps bridge the gap between understanding a problem and its solution and translating that into a working program which then needs to be debugged and checked to see if it does what it is supposed to do. The key stage is the story boarding in the middle. I like to think of the steps shown above as following the following stages:
- Plain Language: Think about the problem and work through a solution in your mind
- Maths/Logic: Build in any mathematical or logical operators into your solution
- Application Syntax: Implement your solution using the particular syntax of the app or programming language you are using.
- If a class has collected the most money in the school, they get the day off school.
- If money collected = most money, then day = day off, else day = normal school
- =IF(cell=max(range);”Day Off”;”normal school”) [in an Excel spreadsheet]
It is tempting to see each of these levels (plain language, maths/logic, app syntax) as discrete strengths of semantic gravity, moving from plain language (strong semantic gravity) to maths/logic (weak semantic gravity) and then back to app syntax (strong semantic gravity). This would describe a wave much like the graph shown below. This is a useful way to conceive of the shifts in levels of abstraction while using a computer to solve a problem.
Over the years teaching spreadsheets, databases and coding, I have come to develop a routine of modelling how to go about using computers to solve problems which follows the three steps enumerated above. It is summarised as the ELS method:
- State the problem and solution in plain English
- Plug in any mathematical or Logical operators
- Enter it using the particular Syntax of whatever application you are using
This helps students, I think, by giving them a process to follow and helps move up and down the semantic range, but my grade 8s and 9s still struggle to apply it.
Although the three step process helps build in a movement up and down the semantic range, it is not enough. Each step represents a semantic range in its own right, for the novice at any rate. When stating a problem’s solution in plain language, one needs to hold in mind the contextual parameters of the problem and an ideational, abstraction of the solution in one’s mind. When working through the mathematical and logical expression of the solution, one needs to continually jump back to the context of the problem and forth to the emerging formula. When translating this formula into the particular syntax of the application you are using, also requires rapid jumps back and forth up the spectrum between weak and strong semantic gravity. Although the curve above may well describe the overall movement of meaning in the task, it seems to me to be made up of rapid oscillations back and forth between two states, abstract and concrete, a kind of quantum wave, if you like, as the student superimposes an abstract solution on top of a concrete problem’s solution. I believe it is this which makes it particularly difficult for novice programmers and spreadsheet/database creators to navigate the coding of a solution. More experienced programmers handle these shifts with ease.
How and Why Questions help move up and down the semantic range
When using the ELS method in a whole class situation I model the mental process of thinking through the task very closely, drawing on student contributions. But getting students to work in pairs is also very necessary as it forces them to voice their mental processes and this helps strengthen and weaken semantic gravity. If you are explaining why you think the formula should be this rather than that, you are effectively making jumps up and down the semantic range because you are dealing with why questions, which tend to raise the level of abstraction, and with how questions which help concretise your solution. When you try something and it doesn’t work, having to discuss possible reasons with a peer helps do the same.
Cutts et al., 2012. The abstraction transition taxonomy: developing desired learning outcomes through the lens of situated cognition. In Proceedings of the ninth annual international conference on International computing education research. ACM, pp. 63–70. Available at: https://doi.org/10.1145/2361276.2361290.
Maton, Karl. (2014). A TALL order?: Legitimation Code Theory for academic language and learning. Journal of Academic Language and Learning. 8. 34-48.