Semantic Waves in Computing: Q&A

Paul Curzon, Karl Maton, Jane Waite and Jim Donohue

The following are answers to the chat questions asked after the online presentation we gave (with Paul the presenter) at the Cambridge Computing Education Research Symposium, April 2020. Paul’s talk “Semantic waves: analysing the effectiveness of computing activities” (which has an accompanying PDF article) was given in ‘Theme 3: Application of theoretical frameworks’

There wasn’t time to answer all the questions so these are my (Paul’s) personal attempts at answers and attempts to put answers in the context of computer science, with lots of help from Karl, Jane and Jim. Assume the wisdom is theirs and the mistakes mine. I have tried to keep the style conversational to mirror the context of the discussion after presenting the paper at the Cambridge Symposium.

There may be / probably is literature on most of the following from the LCT community with respect to other disciplines. They have done a lot of work over many disciplines. Where we are aware of it we’ve included it in references with each question. 

Packing and Unpacking

In the waves you talked about unpacking and repacking – which is itself a metaphor – can you say more about what students are doing mentally in those processes? Particularly what ‘unpacking’ and ‘repacking’ mean? Can you give an example of a repacking activity? “I’d suggest unpacking could be ‘exemplification and explanation’ and packing could be ‘generalising and summarising’?”

Unpacking and repacking are about taking technical words that embody dense concepts and breaking them down into component meanings that the learner can understand, then building back the terms into more complex constellations of meaning. It is about giving them the deep and wide understanding of terminology so they have mastery of the knowledge they symbolise. (See the question below about concept maps – they make quite a good visualisation of what packing and unpacking is about!)

For example, if I as a computer scientist use the word “repetition” or phrase “for loop”, immediately I can draw on a vast amount of understanding that I understand those words mean (in a computer science context)  – I think of boolean tests, bodies, termination conditions, invariants, counter-controlled loops, non-termination, … (and everything they mean). All these phrases have a lot of meaning ‘packed’  into them.

A novice, by contrast, might just think of the everyday meaning of repeating things, or from ‘loop’ think about a lasso instead. 

As a teacher I can unpack the dense concepts and words by making links to the everyday things the novice is thinking of and drawing parallels (and by pointing out differences) or by giving concrete examples. For example, I can use an example of writing 100 lines to explain what I mean by repetition (unpacking the concept) then link it to a program that does it as a sequence of 100 steps and compare that to a for loop version in pseudocode 

Repeat 100 times: 

    print  “I must not sleep in class”

and then to one in python, explaining how that is an example of what we mean by a for loop.

Another simple example of repacking is after an unplugged activity acting out assignments using boxes. Having made links from how moving paper around boxes, copying it and shredding it, to what variables do and the language of variables, values, assignment, lhs, rhs etc I give a summary slide summarising the facts learnt. That is me doing the repacking though. Better is I ask the students, having observed the activity, to summarise as many facts as they can about assignment and variables. They are likely to only partly use the technical language

“A variable stores things” rather than “A variable stores a value of some type” but they are starting to build their way towards the dense understanding and use of the terminology I can do as someone with mastery. I could then give my summary slide and in comparing what they wrote to my list they are doing some more repacking going further up the semantic wave.

I might then ask them to do a paper dry run of a similar example to that above  (taking them on another wave).  However, as they step through the same sequence of assignments again they are now drawing pictures of boxes instead of putting things in the physical boxes as above. As they do this they are making links between the words, the concepts and subconcepts. Now storing a value has gone from putting a value in a box to become writing it in a box on a piece of paper. There is some generalising possible in their head but in doing the dry run on a technical example (a program fragment) themself they are repacking what they saw.

Is unpacking  ‘exemplification and explanation’ and repacking ‘generalising and summarising’?”

I would talk about a good explanation as the whole curve as in the explanation 3 below. Exemplification is one way of unpacking.

Here is an example from a HCI module I teach at MSc level with three written explanations where I first just give a technical description (flatline high), in the second version unpack it with an example (a down escalator profile). In the third I repack that example, linking the example components back to the technical term (a full wave). I would say they are all explanations and the latter is the best explanation because it follows a curve.

Below are three different explanations of the same concept (though note this an example taken from an MSc module I teach so is pretty high level stuff – of my explanations aren’t good enough then focus more on the pattern of it just being jargon,  introducing a concrete  example / everyday language and then explaining the example)

Explanation 1: “Look and feel” is one of three categories of Houde and Hill’s model of prototypes. It is about aesthetics and usability.

  • No unpacking or repacking.

Explanation 2: “Look and feel” is one of three categories of Houde and Hill’s model of prototypes. It is about aesthetics and usability (i.e., what it looks like and how easy it is to use). For example, a look and feel prototype might be created in powerpoint (i.e. a prototype implemented using powerpoint slides as a kind of storyboard) used to determine whether users think the prototype you  are developing looks cool, and the number of steps needed to complete a task as well as whether users can find the right buttons.

  • unpacking with an example but no repacking.

Explanation 3: “Look and feel” is one of three categories of Houde and Hill’s model of prototypes. It is about  aesthetics and usability (i.e., what it looks like and how easy it is to use). For example, a look and feel prototype might be created in powerpoint (i.e. a prototype implemented using powerpoint slides as a kind of storyboard). It would be a look and feel prototype if it was used to find out whether users think the prototype you  are developing looks cool then this would be a look and feel prototype as this category covers aesthetics which is about the emotions provoked by a design (eg liking because it is beautiful). If the prototype was also used to determine the number of steps needed to complete a task as well as whether users can find the right buttons, then this too would still be a look and feel prototype. Both of these are look and feel because the number of steps and being able to work out how to operate it are both about usability. Look and feel prototypes contrast with the other Houde and Hill categories: being about the role it plays in someone’s life, or whether it is technically possible to implement it. Overall look and feel thus is about all aspects to do with the way it looks (aesthetics) and the ease of use (usability).

  • unpacking with an example then repacking that example. (but also 

More examples are given in answers below.

Jim: Halliday deals with various features of ‘technical language’ which he relates to something called ‘grammatical metaphor’ and uses what is essentially a wave. He gets students to rank a number of variations on the ‘same’ statement from more expert to more ‘common sense’. For example, at the most technical end (top of the wave) he has ‘The truest confirmation of the accuracy of our knowledge is the effectiveness of our actions’. Half way down the wave, he has ‘We can prove that we know exactly what’s happening by seeing that what we do is working’. At the bottom of the wave he has ‘Look – wasn’t it good that we watered the house plant? See how well it’s growing!’ This is a linguistic example comparable to the movement between abstract concepts and unplugged activities.

I hope I’ve done some unpacking and repacking of the words “unpacking” and “repacking” above. As an exercise – draw the semantic profile yourself of the above: is it a series of waves?


Halliday, M.A.K., (1998) ‘Language and Knowledge: The unpacking of text’, Ch2, pps 24-48 in M.A.K. Halliday, The Language of Science, ed J. Webster, London:Continuum

The following are available from

‘Unpacking’ and ‘repacking’ are just one way of moving up and down in waves. The references below are some of the ways in which semantic waves have been achieved in teaching practice in other subject areas. 

Ingold, R. & O’Sullivan, D. (2017) Riding the waves to academic success, Modern English Teacher Magazine, 26(2): 39–43.

Macnaught, L., Maton, K., Martin, J.R. & Matruglio, E. (2013) Jointly constructing semantic waves: Implications for teacher training, Linguistics and Education, 24(1): 50–63.

Maton, K. (2020) Semantic waves: Context, complexity and academic discourse, in Martin, J. R., Maton, K. & Doran, Y. J. (eds) Accessing Academic Discourse: Systemic functional linguistics and Legitimation Code Theory, London, Routledge, 59–85.

Brooke, M. (2017) Using ‘semantic waves’ to guide students through the research process, Asian Journal of the Scholarship of Teaching and Learning, 7(1): 37–66.

Clarence, S. (2016) Surfing the waves of learning: enacting a semantics analysis of teaching in a first-year Law course. Higher Education Research & Development, 36(5): 920–933.

Blackie, M. (2014) Creating semantic waves: Using Legitimation Code Theory as a tool to aid the teaching of chemistry, Chemistry Education Research and Practice, 15: 462–469.

Kirk, S. (2017) Waves of reflection: Seeing knowledge(s) in academic writing, in Kemp, J. (ed), EAP in a rapidly changing landscape: issues, challenges and solutions. Proceedings of the 2015 BALEAP Conference. Reading: Garnet.

Everyday concepts and choosing good examples

Is it usually possible in CS to go part way, i.e. go not to everyday, but to previous computing concepts?

Any  tips on choosing good examples?

The baseline of what you are working to – the concrete part where you ground the wave – depends on the students and the level of mastery they have already. With MSc students you assume they have a mastery of at least basic undergraduate topics for example. By week 6 of my introductory programming course I assume some mastery of the basics of sequences and assignments. However computer science is a very foundational subject (like maths): if you did not understand last week you will be lost next week.

I have always found, teaching introductory programming, that the students move at completely different speeds and I design the course to actually allow them to do so. What matters is what they can do at the end. That means if you want to take as many with you as you can it is better to go down to the everyday, where everyone understands. I generally do multiple waves though doing both that as an introduction perhaps but then moving on to a wave that works with more technical concepts previously covered.

You should also plan waves from lesson to lesson, so this week you are using last week’s material as part of the grounding. I think unplugged can help a lot here as the theatrical versions I do such as role play are very memorable. You can just say “remember the line of cats in hats we acted out from last week that were recursive calls, well that’s what this is – it’s another cat”

There probably are concepts that are harder but I’ve never had too much problem finding examples. Once I started looking I see them everywhere – that is the basis of lots of my cs4fn/Teaching London Computing activities.

I find it a lot easier to see things in the world and think “that’s like …”  a computer concept than just when required to think of the everyday version of what I’m about to teach. I just note them as I see them. For example we have found dozens of different concepts – algorithms, searching, HCI, security and more I can teach just with different magic tricks and thinking about what computing they make me think of. Here are a bunch of others: 

  • Pixels? – Roman mosaics
  • Algorithms? – magic tricks
  • Recursion? – the cat in the hat comes back / the way plants grow
  • Variables? – boxes
  • Public key encryption? – locks and keys
  • One way functions – jigsaws
  • ASCII like character representations- Braille
  • Number representation – roman numerals / Egyption numerals
  •  …

See all the puzzles and activities on Teaching London Computing for links I’ve made. CS Unplugged is another great website.

The first thing is to realise computation does happen in the real world on physical things, not just on computers. Often then you get very close matches (eg stacks and stacks of chairs, priority queues and airline check in desks, …). Other times you have something similar enough to make a link even though it’s only part of the concepts. Other times because computation can act physically you can just role play – eg making Turing machines into something physical made out of chocolate. Other times you can create something like a puzzle e.g. vector graphics? Create a puzzle to draw the picture given the instructions, or note how artists like Riley did lots of small preparation versions of her artworks then scaled them up to the full size work.

For example my booklet ‘Computing Without Computers’ which was an early attempt to log ideas led to the booklet with several hundred pages just on programming and simple data structures and algorithms. Our book ‘The Power of Computational thinking’ has lots around both computational thinking and Artificial Intelligence.

The best examples I think are ones either 

  1. with a close fit, 
  2. with a looser fit but applied just to explain a part of a concept and the point where it breaks down made clear, or
  3. that are just naturally fun and so memorable.

Examples can be technical too, though, and it is important to use a mixture of kinds of example. Examples can either 

  1. be in technical language, but with a concrete context (eg giving a concrete program that does the thing talked about – eg show an actual linear search program in a programming language) or 
  2. be in a technical context and everyday language (eg talking through how linear search would search for a specific value in an array of integers drawn as a line of boxes…”first it looks in this box”)
  3. Be in a non-technical context and everyday language (talking through how you might use linear search to do a wordsearch puzzle from a puzzle book).

In particular I mix role play examples, acting out a running program with immediate follow up pencil and paper dry run exercises (“Now work out what this program does by stepping through it line by line, drawing a table showing the value in every variable at each step”). The aim is that this creates waves following waves.


Teaching London Computing Website (2020) Last visited 8 April 2020

Computer Science for Fun (cs4fn) website (2020), Last visited 8 April 2020

CS Unplugged,

Curzon P. (2014) Computing without computers. V 0.15, Queen Mary University of London. Available from

Curzon P and. McOwan PW (2017) The Power of Computational Thinking: Games, Magic and Puzzles to Help You Become a Computational Thinker, World Scientific.

The shape of the curve

Is there any benefit of a “U-shaped” wave as opposed to an “n-shaped” wave?

Generally you have waves linked to waves, so which it is depends where you start to look at a detailed level. What shape the wave takes really depends on what you’re trying to do and with whom. Each shape has advantages and potential disadvantages. 

For the U curve, starting with learning outcomes (and ending with them) – they are technical statements so higher on the curve – means the learner knows where they are going, so can start making links (unpacking or repacking). They are not having to guess what it is really about or wondering why they are having a lesson about cooking recipes in a computing class. If you start by introducing algorithms and then unpack that by saying an algorithm is a lot like a recipe, then they know from the outset what it is really about. 

There can be reasons to do it the other way though eg as a short grab. I might start a lesson with a magic trick (eg in a Human-computer interaction (HCI) class to demonstrate everyone has a single focus of attention)….The trick grabs their interest, then I link it up to the technical things and then go into a follow on wave where they apply it. That would be n shaped. As another trivial example, my father once started a lesson on transport by riding in on a motorbike. Quintin Cutts has argued for the importance of an early grab, though that does not preclude starting with a very brief summary of what it’s about. “Today we will talk about attention in HCI. I will demonstrate with a magic trick…” An advantage of the n-shaped wave is that you may begin and end with knowledge that engages and interests students, such as experiential understanding or everyday life. 

I often use what is more like an n shaped curve in articles for cs4fn magazine ( – the introduction is often a teaser starting with something apparently nothing to do with computing (a grab) but ending the intro with a link or question about what the link is. That question is intended to get the reader thinking – what could possibly be the link between a Madonna concert and the dependability of the internet designed to survive nuclear war? The n shape fits its fun style rather than the formal style of lessons. Good articles do then follow (U) waves after that though. Related to this – the images in the magazine often have little to do with computers – they are tangential acting as visual grabs so again giving an n structure as the image and headline (also usually tangential) will be seen first.

Karl Maton: From what we are seeing in ongoing studies, it does seem as if it depends on what you’re aiming to teach and your audience. Here is an anecdotal ‘experiment’ we did early on when we were wondering if this might be the case. A scholar did the same talk to pretty much the same kind of audience, using the same data and concepts, in two different waves: (1) she began with theory, then went down to the object of study and data, discussed results etc, then back up to its meaning for the theory; and (2) she began with the object, problem and data, then went up to theory, and back down to how it was used here, and then what that showed for the specific problem. The first was more U-shaped, the second more n-shaped (though neither was just that – they involved more ups and downs). The audiences were from educational technology and they did not care much for the talk when it was structured as (1) but loved it when it was (2). The second structure began and ended with what they cared about, to put it simply. However, that doesn’t mean that the semantic profile of (2) is always better. Indeed, (1) was a great hit when the scholar presented the paper at a conference on the theory. Obviously this example is a bit simplistic, but my point here is that there does seem to be pros and cons to all waves. In fact, all semantic profiles might have value. Right now, an LCT educator in South Africa is teaching her students remotely through a series of unpackings: so she is only moving downwards – a series of ‘down escalators’, as we call them. That’s because her students have limited access to the internet and very difficult living conditions during the country’s severe lockdown in response to COVID-19. What those ‘down escalators’ allow is a series of fairly simple tasks to keep the students ticking over and connected to the academic knowledge they need to be learning. She aims to then bring those downshifts together with a major set of upshifting activities and lessons, when the lockdown is over, to complete a wave. She will gather up the threads from the bottom of the semantic profile, weave them together, and bring the knowledge up again. So, even ‘down escalators’ can be useful.     

Programming Languages

Which language were you teaching with when you were explaining the concepts?

The Box Variable activity I first analysed with semantic profile was taught in Java to undergraduates – that is what I’ve been doing for a decade or more. When I’ve done it for teachers I used the equivalent Python. It just has fewer humps in the wave as there are fewer lines of code – no declarations to explain line by line. The shape is essentially the same whatever language you do it in: a series of waves within a bigger wave.


Curzon P. Box Variables Activity. Available from Last Accessed 8 April 2020.

Problem Solving

How would this fit into a problem-solving approach to curriculum design?

This isn’t something I’ve thought about in the big sense of problem solving. In the small sense, setting problems based on a topic explained is an example of giving repacking opportunities. The same general ideas probably apply where the curriculum is based around setting big problems for students to research and solve themselves. If left with no help then there may or not be good waves happening. However, problem solving approaches are, I imagine, rarely that extreme. Instead they come with scaffolding help at appropriate points. That scaffolding if it is to work well should, on a micro level, be following a wave (ie the scaffolded explanation) and overall should be doing so.

The above is just my general hunch. There may be literature on it from the LCT community (e.g. below)


Mouton, M. (2019) A case for project based learning to enact semantic waves: towards cumulative knowledge building, Journal of Biological Education, DOI: 10.1080/00219266.2019.1585379

The Learning Pit

The work of James Nottingham (2007) on the Learning Pit shows a similar curve but as a way of introducing greater self-efficacy in learning which is challenging. Is there potential to link the two ideas together?

I have not read this paper (yet)…but it sounds like there is a link, having had a brief look at the website above. The pit itself is not a semantic wave. The plan of how to traverse it successfully looks like it is following a wave structure at least to some extent (though the wave is not the pit) – so it is one example or one schema of a wave structure as good learning. 

Semantic waves are a theory about how to make challenging learning easier. The learning pit is about discovering things are harder than you thought so the pit is where you realise you have to work hard to understand. The plan of how to traverse includes an activity of start with a concept then “expose contradictions” which could be an example of an unpacking activity. “Connect and explain” on the way out of the pit is a repacking activity but then so would “apply and relate” which is on the flat.

Unpacking and repacking activities that encourage self-efficacy are almost certainly stronger than ones that don’t (see my example earlier about the teacher repacking versus the student doing an exercise that allows them to repack). It also links to the suggestion in one of my answers about scaffolding in problem solving.

I aim to not let people realise they are in a pit – really good unplugged activities make learning seem effortless and even that you are having so much fun you do not realise you were doing “work” for it. You gain self-efficacy because you find you can do it before you realised it was hard.  Semantic waves then give a way to avoid becoming stuck in such a pit. Letting people drop into a pit can certainly be destructive for some if they do not have the resilience yet, so I imagine such pits have to be scaffolded enormously or it would do wonders for some while destroying others…. So many people already come to say “I’ll never be able to program” (Or “…IT” or “…maths”) Stopping them getting to that point is key. So if you are in a pit you had better be there with scaffolding to help. That seems to be what Nottingham is arguing – giving a particular kind of scaffolding support. Semantic waves certainly give you a way to think about how to provide that scaffolding.

Executive Functioning

Perhaps semantic wave unpacking is the use of executive functioning … Paul, I’d be very interested to explore further the relationship between the use of semantic waves and developing students’ executive functioning, especially in ‘shifting’, ‘updating’ and ‘inhibition’ … the excellent Raspberry Pi Pedagogy ‘Quick Reads’ publication on this subject has been brought to life in your presentation.

I’ve not thought anything about this before but sounds a fruitful idea. 

To give some context from Wikipedia…

Executive functions … are a set of cognitive processes that are necessary for the cognitive control of behaviour: selecting and successfully monitoring behaviours that facilitate the attainment of chosen goals.” It is about skills to do with mental control and self-regulation.


I have always been very interested in distributed cognition – or “cognition in the wild”. This is about how we can externalise information from our heads out into the world and in doing so, if we use good representations, make it far easier to do tasks.  Given the definition above, this is presumably one such executive function kind of process. There is a very close link here to what I do with unplugged. It externalises the abstract concepts and makes them tangible. Once they are tangible it is much easier for people to ask questions – pointing for example and saying what if she …- before they have mastered the technical vocabulary. Semantic waves put this in a new light as it is a way of allowing the learner to ask questions at the bottom of the wave instead of only in technical language at the top. I think that is really powerful – in lectures teaching 300-400 at once role play unplugged activities often lead to large numbers of questions.

This also presumably relates to the self-efficacy / learning pit question above.


Wikipedia contributors, ‘Executive functions’, Wikipedia, The Free Encyclopedia, 9 March 2020, 20:45 UTC, <> [accessed 25 April 2020]

Hutchins, E. (1996) Cognition in the Wild. MIT Press

Cognitive load theory

I wonder if there is a connection to cognitive load theory

I know most about this in the context of human error and working memory in HCI rather than a learning context, but ….There clearly is a connection. Taking one definition in the context of learning at random

Cognitive Load Theory aims to understand how the cognitive load produced by learning tasks can impede students’ ability to process new information and to create long-term memories.”

The point of a wave structure is to lower the cognitive load in understanding new concepts. If I give a technical explanation like “A for loop consists of an initialisation, a test, an increment statement and a body. It repeats the body …” – that is six or seven concepts a novice has to grapple with that they probably barely understand and certainly struggle to remember – it is all jargon. They are desperately trying to recall what each part means before they can make sense of the whole. Waves give links to things you already do understand for the sub concepts and makes you work to make the links, so removes that burden.

Why I think you need waves within waves is that you need separate waves to unpack each subconcept and so lower the cognitive load for understanding each sub concept and how it links to the bigger picture.

In terms of the different types of load: 

  • intrinsic load
    • Some topics are denser in their packing than others so have greater intrinsic load
  • Extraneous load
    • Is all about how things are presented. Following waves is a way to lower the extraneous load
  • Germane load
    • Is all about the amount of work needed to make long term memories. By making solid, naturally memorable links to concepts already known and experiences about them ought to help with germane load. Unplugged activities and powerful metaphors are likely to help. They limit extraneous load and instead promote germane load (?)

Repacking activities that make the learner externalise that repacking are likely to be better than ones where they repack in their head. For example. I try to avoid asking a question that one person puts up their hand to answer. I tell everyone to write down their answer / work it out and only then do I ask for an answer. That writing down will externalise the problem solving so reduce the extraneous/germane load. I am a strong supporter of paper – with current technology it often is far easier to externalise things to it!


Cognitive Load Theory

Advanced Vocabulary

Given this draws from a linguistic approach to learning…any suggestions regarding how/when in the wave advanced vocabulary is introduced?

If following a wave you introduce the main new vocabulary briefly at the start. Dropping down the wave unpacks that into sub concepts that may also be new vocabulary. I would avoid bringing in lots of sub vocabulary in one go, but use a series of waves within the big wave to introduce each, gradually pulling them into the bigger picture. Finally the overall repacking puts it all back together: old vocab, new sub-vocab and overall concept.

For example, when explaining “computational thinking” using the create-a-face activity, at the start I introduce “computational thinking” and descend a wave into setting up and acting out a robot face showing emotions. As we build the face I talk about sub concepts one at a time at natural times in building the robot from people: so now in the context of the robot – eg decomposition: we are programming the eyebrows separately to the eyes to the mouth… later abstraction: I glossed over the details of what I meant by a happy sound which helped think about the main actions (I did abstraction)…but now I need to define those details. What do I mean by a happy sound? Each of these subconcepts and new vocabulary associated with it are introduced in a series of waves within the big wave, etc. At the end I ask the learners to summarise the main concepts that make up computational thinking and at this point they are repacking that vocabulary back into the new phrase “Computational thinking”

Just as an aside (and this is Karl jumping in for a moment), though ‘semantic waves’ certainly takes language seriously, the notion of semantic waves does not draw from a linguistic approach to learning. It’s from sociology – Legitimation Code Theory is a sociological approach. That’s important to stress because LCT doesn’t just look at language. For example, a recently completed PhD uses these ideas to study ballet teaching – it analyses the semantic waves of putting together increasingly complex moves and postures. But you’re completely right to highlight that it takes language seriously.   


Create-a-face, Teaching London Computing

Cross Curricular links

Perhaps it is not hard to understand for students, the key is cross curricula, for them to make a relationships of the word variable in mathematics and in programming is the problem, their tendency is to isolate matters. What do you think?

Making cross-curricula links is a very good way to make links, especially where the topic in the other subject is already mastered. However it can also work to help develop understanding in both at once. For example as part of a talk on AI I explain the basics of neural networks directly by talking about how the brain works and acting out a brain that plays snap with the class. This helps teach both the biology and the computing. We are using computational modelling to teach biology – a better way to understand how a neuron works: far better than just drawing a labelled diagram as seems to be standard in biology. (This is computation in the world again)

Ultimately with a foundation of what is being acted out, but the brain is something a little more concrete than a neural net so repacking via what the brain does helps in understanding the AI (I do the same activity from primary school to sixth formers and teachers).

Karl – if I’ve understood the question (which I may not have), I think it’s saying that there is a need to build on student knowledge gained from other subject areas, such as building on their understanding of ‘variable’ from maths. That is a very interesting issue.  We used one set of concepts from one dimension of LCT, called ‘Semantics’. They enable us to explore how different forms of knowledge (such as theory and practical examples) are related together or not. But for questions of how we can best integrate knowledge from different sources, a better dimension is Autonomy. This is another part of LCT, with different concepts. They are being used to examine how we can integrate and build, for example, mathematics into science or everyday experiences into humanities subjects. I won’t elaborate further here, but it’s a useful excuse to say that there is more to LCT and if the Autonomy dimension sounds useful, then you can read about it at the reference below. It comes with an equivalent concept to ‘semantic waves’ that is called ‘autonomy tours’ – they describe pedagogic moves that build knowledge from different sources.

Paul again – variables in maths is a good example of how links can help and hinder. A maths variable is a good starting point for understanding a programming variable but (depending on the language) it falls apart very quickly.  A Maths variable in say algebra has a value that doesnt change – so fine if you have only bindings as in a functional programming language but if you have state (as in most common introductory languages) things go wrong. Combined with assignment notation it can confuse enormously x = x + 1 ??? That is fine in programming but looks strange in maths. It is a good example of how you have to be very careful to point out where links break down (whether you make them or the students may be making them). You need to be able to spot where misconceptions from the everyday may creep in and totally confuse. When unpacking and  repacking you have to make sure the students do not repack false things. The Box Variable activity is all about giving an explicit mental model that actually fits more closely to what a programming variable is like


Maton, K. & Howard, S. K. (2018) Taking autonomy tours: A key to integrative knowledge-building, LCT Centre Occasional Paper 1 (June): 1–35.

Curzon P. Box Variables Activity. Available from Last Accessed 8 April 2020.

Concept Maps

It feels like concept maps could help a lot with the “repacking”, as they would explicitly provide a structure of the knowledge we would like students to retain (a schema).

Almost certainly. My student Mark Dorling is looking at concept maps in teaching computing, as part of his PhD, though not explicitly from a semantic wave point of view. I have started to use them in my teaching. The main benefits from concept maps seem to be from the act of drawing them, rather than being given them, (and of then repeatedly drawing them as you learn more). That links to the idea that it is better to let learners repack than have teachers do it. I agree that drawing concept maps, starting with the main concept being explained as the starting node, does map very nicely to the idea of repacking. In fact it gives a pictorial idea of what packing and unpacking is all about – expanding that one node into an ever increasing web of knowledge you understand about it. Therefore drawing a concept map would make a very good repacking activity, and probably better than writing lists of facts (as I used in the Box Variable activity that I analysed for the paper). In a concept map you are explicitly making links in a pictorial way. The disadvantage is that you have to explain concept maps first before students can use them, if it is not something they are being taught as a meta-cognition activity already.


Curzon P. Box Variables Activity. Available from Last Accessed 8 April 2020.

Other Comments

I can look at my physics lessons I have taught over many years and could definitely plot the wave from memory.

Karl: I have always said that ‘semantic waves’ (and other concepts from LCT such as ‘autonomy tours’) are not creating a new thing but rather making visible something we could not see clearly enough. Great teachers do semantic waves. But they do them often intuitively and not always either often enough or when they wish to. And so many teachers do not do them and do not know how. We hope the notion of ‘semantic waves’ gives teachers more control over what they wish to do, should they wish to use them.

Again, fascinating … it gives a structure to a number of ‘Unplugged’ activities which I find go down well even with the older, more self-conscious, students. I particularly like the way in which the students are active in its progress … they are cognisant of what is happening and why it is happening.

Additional References

A good place to start in understanding semantic waves in general is:

K. Maton. 2013. Making semantic waves: a key to cumulative knowledge-building.  Linguistics and Education 24, 8-22 (2013).

The following are some of our writing specifically about Semantic Waves in Teaching Computer Science.

Curzon, P. Semantic Waves: Tip 9 Use Semantic Waves, Learning to Learn to Program, Teaching London Computing.

P. Curzon, P.W. McOwan, J. Donohue, S. Wright, and D.W. Mars (2018) Teaching Computer Science concepts. In Computer Science Education: Perspectives on Teaching and Learning in School, S. Sentance, E. Barendsen, and C. Schulte (Eds.). Bloomsbury Publishing, London, Chapter 8, 91–108.

P. Curzon and S. Grover (to appear), Guided Exploration for Introducing Programming Concepts through Unplugged Activities, chapter in a forthcoming book.

Jane Waite, Karl Maton, Paul Curzon & Lucinda Tuttiett (2019) Unplugged Computing and Semantic Waves: Analysing Crazy Characters, Proceeding of UKICER – The UK and Ireland Computing Education Research Conference, University of Kent, Canterbury, UK, September. ACM. DOI: 10.1145/3351287.3351291