RSS

Category Archives: Coding For Kids

EduTech Africa 2019 – Coda

Last week I attended the EduTech Africa 2019 Conference in Johannesburg and would like to wrap up my thoughts on the conference with a few observations. Now that the dust has settled the thing that sticks out most in my mind is the clear recognition of the rise of Computer Science as a K-12 academic discipline. The government’s commitment to rolling out IT as a subject, and the focus on coding across all age groups has established a clear sense that Computational Thinking and Computer Science belongs in the core curriculum in all schools. The big question is then how we get there. The announcement recently that PISA Assessments, which offers international benchmarks in Maths & Science, will now include Computational Thinking and Computer Science is confirmation of this. Most of the talks I attended addressed the issue of how best to teach Computer Science in some form or other. Passionate teachers shared their best practice, and their failures. So, the coda to my reflections on the conference is really to address that question. Is there a best method to teach Computer Science?

NS Prabhu (1990) in answering the question of whether there is a best method of teaching or not, concluded that the key factor in teaching success lay with the teacher’s sense of plausibility, the teacher’s sense of self belief that what they are doing makes sense, how passionate they are. There is clearly a great deal of plausibility around the teaching of Computer Science at the moment. Obstacles are being dealt with as opportunities, and there is a very real sense that inventiveness and creativity can overcome the constraints of budget and lack of training.

The clear consensus amongst teachers seems to be that physical computing forms the best approach. Most presentations highlighted the use of coding in conjunction with 3D printing and robotics. My very first exposure to teaching computing was with Seymour Papert’s (1980) logo system. I did not have the turtles, using only the computer interface, but I tried to make it more concrete by using physical cards with shapes students had to emulate. Computer Science is a very abstract subject and needs to be concretised for students as much as possible. The cost of all the kit needed to do this is prohibitive.

I recently came across micro:bits which uses a web-based platform for coding. The code created is then downloaded as compiled hex code to the microbit chip which executes the code. But crucially it also has a web visualisation tool, which executes the code in the code editing window. The micro:bit controllers are themselves fairly cheap, but having a visualization tool means that more students can code at any one time. A class would need fewer physical chips at any one time. I have not yet been able to test the real thing, but it seems to me a perfect fit for the kinds of physical computing tasks I would wish to introduce. It uses a block coding interface, but you can toggle to program in JavaScript or Python, making it ideal for transitioning between block-based coding to the text-based fare students will need higher up the school. You can also design 3D printed parts for interesting projects.

But I digress, back to best methods. Another strong thread in the conference was computing for problem solving. I have to say that I am a little dubious about the whole Computational Thinking leads to better problem solving generally. I believe it leads to better problem solving in computational contexts, but transfer of skills from one context to another is always problematic in my view. Nevertheless, I do believe that students should be given real world problems to solve as far as possible and Computer Science teachers are leading the way in envisioning how coding could form a central plank in cross-disciplinary problem solving exercises. There was a great deal of talk at the conference about the need for teachers to “come out of their silos.” There is certainly no need for CS teachers to set projects divorced from the real world, or set problems narrowly about computers.

The final method that was raised at the conference was unplugged computing, an approach which involves modelling algorithmic thinking without a computer. For example students might be asked to write code to control a class-mate acting as a robot to perform a certain task. A talk by a primary school teacher on coding in the junior years had us all playing rock, paper, scissors. I’ve forgotten why, but it was great fun!

 

In the end, my take-away from the conference was to think about the best approaches for my own classes. And most particularly how to integrate all three of these approaches better. To my mind this is the best sort of take-away!

 

Bibliography

Papert, S, 1980. Mindstorms : Children, Computers, and Powerful Ideas. Basic Books. https://dl.acm.org/citation.cfm?id=1095592.

Prabhu, N.S, There Is No Best method – Why?, TESOL Quarterly, vol. 24, issue 2 (1990) pp. 161-176
 

Coding & Robotics Summit – Johannesburg

Artificial Intelligence and the Fourth Industrial Revolution have become buzzwords in education, often used with little thought or understanding in slightly Pavlovian ways. There is a very real sense that big changes are afoot, and everyone is nervous about how to respond, and most particularly to be seen to be responding. I am not quite sure what to make of it, frankly. While it is clear that the working landscape will change as a result of AI, I am not convinced that much in the educational field changes … until it does. What do I mean? I think that it is already crystal clear that education should be looking to teach critical thinking, collaboration and creativity. I’m not sure that anything has changed around this. It is my belief that we should have as broad a curriculum as possible. Drama, History, Music should be as core to our curriculum as STEM. It makes no sense to me to de-emphasise or over-emphasise any field. So while I am all in favour of ensuring that coding & robotics forms part of the curriculum, I find the whole STEM, STEAM, and now STREAM (with robotics) debate counter-productive.

There will come a point, however, at which Machine Learning is powerful enough that meaningful AI applications are ready for classroom implementation. When Watson and Skinner built their teaching machines in the last century they imagined programmed learning which allowed for instant feedback and personalised learning paths, the kind of thing advocated by Pestalozzi back in the late 1700s with his one-on-one tutoring methodology. What emerged though, was the kind of drill and kill learning platforms that are the kiss of death for education. Computers are simply not intelligent enough to be able to spot when students are gaming them. However, AI does offer a possible resurrection of the idea with systems that are far more responsive and capable of analysing student production with sufficient nuance as to be useful. Real-time feedback loops enabled by devices which can read the learning brain, are not Science Fiction anymore. Nor are teaching machines which can sift the huge amount of data collected and make sense of it. There will undoubtedly, then, come a point at which AI teaching machines enter the classroom. In the lead up to that we can probably expect a range of apps that employ AI in some way, and answer particular pedagogical needs. As I get older, face and name recognition would be nice! But full-blown AI in the classroom is a little way off yet. Meaningful data analytics is probably much closer, but I’m not convinced having a wealth of data is always a good thing. I am also afraid that that data will be harvested for purposes unrelated to education. Imagine how you could Cambridge Analytica a population if you owned the data being collected on how everyone learns and thinks?

The focus of this one day conference was on Computational Thinking and on coding and robotics as a vehicle for teaching thinking skills, building the habits of mind and dispositions necessary for a post-singularity world. The South African government has recently announced that it will be introducing coding into the primary and GET phase (middle school) curricula. Karen Walstra opened affairs by walking through the history of Computational Thinking and its component parts, how coding concepts can be used across the curriculum and not just in coding classes. I am planning a blog article on Computational Thinking so I won’t dwell on it here. Her talk was vital in terms of introducing Computational Thinking, and in laying thinking skills as the foundation of any curriculum changes. However, what worries me is that an increased interest in coding has elevated it beyond what I think it is capable of providing. Computational Thinking, Coding & Robotics is not a magic bullet which will suddenly solve all education’s ills. It is a necessary skill to learn, a useful knowledge base, and a set of dispositions that all students need, but it should be seen as forming part of the thinking skills programme, not replacing the existing curriculum. All subjects and all skills are vital, in different ways. Don’t get me wrong, I am all in favour of coding’s place in the curriculum, but learning problem solving skills requires a broad world knowledge, and there are a number of thinking skills beyond the computational that are needed. Important, yes. A magic bullet, no.

St Enda’s Secondary School students designing a school website, circa 2003.

What her talk did highlight was the notion that all students can benefit from learning coding. The team from CodeJIKa presented a cogent case for this with their wonderful extra-curricular code club programme teaching students HTML, CSS and a little JavaScript. They have an online curriculum which runs largely through peer to peer learning. When I was teaching Computer Applications at St Enda’s Secondary School in the early 2000s I used the same approach. HTML & JavaScript are browser based and so do not need compilers and can be used offline – a huge consideration where Internet connection is a big problem. To my mind starting with a markup language is also helpful because it is easier to slip into, helping students get into the habit of moving between the concrete and the abstract. You can then start to slip JavaScript in quite organically and start introducing key programming concepts. Robyn Clark, from CodeJIKA, stressed how web design is also helpful in building entrepreneurial skills, giving students a side hustle. The CodeJIKA approach is to my mind a fairly easily replicable model across under-resourced schools. It is also flexible and stackable as App development, robotics and programming proper can be added as the skills and knowledge base increases. Amini Murinda from ORT South Africa presented what they have been doing in expanding coding and robotics in a growing number of schools. Both programmes clearly show that coding & robotics initiatives are engaging and transformative.

We heard from two speakers representing robotics companies, who spoke about where robotics and AI is headed, and why we should not fear job losses, and how investing in coding in primary schools could reduce failure rates in higher education. These talks provided a useful backdrop and a perspective from the world of work. I would have liked a greater emphasis on curriculum, but the summit was useful in bringing together participants from industry, teacher training and secondary and tertiary teaching sectors. It would have been great if Government had also been represented. We need many more of these discussions.

The big take-away for me was the need to take these pilot projects, together with the experience of primary and secondary teachers from the private sector who have been developing their own programmes, share best practice and work on a curriculum and pedagogies that make sense.

 

Meaning Making in Computer Education

One of the difficulties in looking at the knowledge practices of teachers of middle and high school computing is the diverse nature of educational practices around the world. In some contexts the curriculum resembles Computer Science at a tertiary level, with an emphasis on computer programming and the theory of hardware, software and networking. In other contexts, however, the emphasis is on computing applications. In South Africa, for example, students can take Information Technology as a matriculation subject, in which programming is studied, or Computer Applications Technology, with an emphasis on Office applications. At middle school levels the emphasis is often on basic computer literacy. Coding and robotics are, however, often taught alongside basic computer literacy and information literacy.

Waite, et al (2019) have argued that Legitimation Code Theory (LCT), in particular the idea that effective knowledge building practices involve the formation of semantic waves, provides a framework for assessing the effectiveness of practices in the teaching of computing by providing a common language for describing diverse practices. I have described Semantic Wave Theory before in this blog, But here is a brief summary.

Karl Maton (2014) has described semantic waves as how teachers try to bridge the gap between high stakes reading  and high stakes writing where ideas are highly abstract and context independent (Weak Semantic Gravity) and highly complex and condensed (Strong Semantic Density). In the classroom these highly abstract and complex ideas are introduced in the form of texts. Students are expected to reproduce these ideas in their own words in the form of essays and examination answers. In order to do this teachers need to help students by giving concepts greater context (Strong Semantic Gravity) and make them simpler (Weak Semantic Density). They do this by using examples, metaphors and personal experience. If you map the changes in semantic gravity and density over time you can describe waves. The ability to make links between abstraction and the concrete, between theory and practice, complex and simple ideas is what makes for effective teaching and learning.

Waite, et al (2019) show how a semantic analysis of an unplugged computer programming task describes just such semantic waves and makes for a successful lesson plan. They also suggest that using semantic waves to analyse lesson plans, and actual lessons, is a way of assessing the effectiveness of lessons teaching computer programming of different kinds. Many teachers use online coding platforms, like Codecademy or Code Combat. In this article I would like to look at a semantic wave analysis of a code combat course on web development to see what it reveals about its strengths and weaknesses as a pedagogical platform. Code Combat uses as its basic structure a series of courses covering a computer science syllabus teaching JavaScript or Python programming and some HTML and CSS. Each course is divided into a series of levels, and each level introduces key concepts such as loops, conditional statements and so on, using quests and tasks performed by an avatar. Students enter the code in a command line interface and can run to test success.The platform provides hints and text completion prompts to help scaffold activities.

Students generally enjoy the platform, and take pleasure in grappling with problems and succeeding at each task. I use it in my grade 8 & 9 computer skills classes. In this analysis I looked at the 13 levels that make up the Web Development 1 course, introducing HTML tags and CSS properties. I looked at Semantic Gravity alone. SG- (Weak Semantic Gravity) representing highly abstract ideas and SG+ (Strong Semantic Gravity) representing highly concrete ideas. I used three levels of degree to indicate strength and weakness (SG— to SG +++)

I used the following translation device for rough coding the level of semantic gravity, and looked at the instructions in each level. The purpose of a translation device is to help translate the theory into what it looks like in practice. What does Weak Semantic Gravity look like when using HTML, what does Strong Semantic Gravity look like?

SG – – – Over-arching concepts Tags used to mark-up text
SG – – Coding Concepts Tags do different things eg <h1> regulates size of a heading
SG – Properties of concepts Tags have properties eg <img> has source, alignment, width
SG + Examples of concepts students must decide which tag to enter
SG + + Examples of properties Student must edit a property eg <img src=”” align=”left”> change to right align
SG + + + Data entry Typing in text

The coding of the thirteen levels was done using only the text used in the platform. I did not look at the graphics. I would argue that the graphics display tends to scaffold all activities by strengthening semantic gravity and helping students visualise what they are coding. The semantic waves formed over time looked as follows:

What we can see is a non-continuous wave which loosely describes the movement between abstract and concrete. Each unit followed a pattern of introducing a particular concept and giving students a chance to practice enacting it. The next level would then introduce a new concept and so on. In some levels students are able to partially practice their developing understanding of the concepts by making choices of which tags to use rather than merely practising enacting the one explained. The movement between weak and strong semantic gravity has been described as a down escalator, and is common in teaching practice. Teachers are generally good at explaining concepts so that students understand them, less common in classroom practice and less common here is the full movement of the wave in such a way that students take concrete examples and are able to express the underlying concepts and display their own understanding effectively. In programming terms this would translate into being able to use concepts learned in novel situations to develop unique solutions, in other words move from a concrete problem to be solved to a conceptual enactment of that by designing an algorithm or coding.

What the semantic wave analysis seems to indicate is that the units in this course are doing a good job in explaining the programming concepts, but not good enough a job in giving students a chance to explore and display their understanding in new contexts. As a teacher, I have to say that this is what struck me immediately. The platform could do some things better than I could. It could allow students to work at their own pace and gave instant feedback, and was certainly more engaging with graphics and its game-like interface, but was not able to set more open-ended tasks, or give students a chance to explain their own understanding of the concepts. The course ends with a “design your own poster” exercise which potentially does this, but each level lacks a degree of this full movement through the semantic wave.

This weakness appears to be hard-coded in, and would require teachers using the platform to mediate as a way of creating fuller semantic waves. Given that students are working at their own pace, my own solution was to use mentors in every class. It was the job of the mentor, anyone who had already completed the course, to help peers who were struggling to complete levels by explaining what needed doing. The mentors at least were then consolidating their knowledge and understanding by explaining it to others, and mentees were benefiting from having the problem re-phrased or re-contextualized.

I would argue that semantic wave analyses like this one would help inform better instructional design decisions. It might appear as if I am being critical of Code Combat, but I believe that other platforms of a similar kind suffer the same weaknesses. This platform, in fact is better than most in using Constructivist learning principles by asking students to design their own solutions, but more could clearly be done to create full semantic waving.

Bibliography

Maton, Karl. (2014). A TALL order?: Legitimation Code Theory for academic language and learning. Journal of Academic Language and Learning. 8. 34-48.

Waite, J., Maton, K., Curzon, P., & Tuttiett, L. (2019). Unplugged Computing and Semantic Waves: Analysing Crazy Characters. Proceedings of UKICER2019 Conference (United Kingdom and Ireland Computing Education Research).

 

EduTech Africa 2018 – Moving Beyond the Technology to Make a Difference t

Over the last decade or so the focus of the ed tech conferences I have attended has shifted increasingly away from the technology itself towards what we can do to transform education. In the early years it was as if ed tech enthusiasts were like magpies, dazzled by every shiny new tool. Some of that sense of wonder still exists, of course, and is healthy. We need to be alive to new possibilities as technology evolves. But over the years we have learned to become more discriminating as we found what tools actually worked in our classrooms, and learned not to try to do too much at one time. The focus started shifting towards pedagogy, towards how to use the tools effectively. Behind this was always some thought as to the significance of the impact of technology on education. Common refrains have been the development of 21st Century Skills, personalised learning, a movement away from teacher-centred to student-centred approaches, problem-based learning, what technologies will disrupt education and learning based on the burgeoning field of neuroscience. The overall sense has been one of promise, that technology has the potential to make teaching and learning more effective, and that education will become transformative in liberating humanity from a model  grounded in the factory system and a mechanised reproduction of knowledge and skills.

 

This year’s conference was no different in content although the technologies have changed somewhat. The focus has shifted towards Artificial Intelligence, robotics and coding, especially how to involve women in STEM and how to infuse computational thinking across the curriculum. However, this is the first time the sense I have is not one of advocacy, but of militancy. Speakers from the world of work were united and adamant in a condemnation of schooling itself. A clear preference for extra-curricular learning and the futility of academic qualifications was presented stridently. Employers, we were told, prefer people able to solve problems. If any learning is required it can be delivered, just-in-time at the point of need, online via MOOCs. Tertiary qualifications should be modular and stackable, acquired over time when required to solve real world problems. Educators endorsed this stance stressing personalised learning and the use of Artificial Intelligence and even real-time feedback from brain activity. The sense was one of an urgent need for a curriculum based on problem solving rather than subject disciplines. If you need some Maths to solve a problem you can get it online. You don’t need to study Maths divorced from real world imperatives.

 

The very idea of tertiary institutions is clearly under massive assault, and it cannot be long before they come for secondary schools as well. What scares me about this is not that I don’t agree that learning should be problem-based at some level, or that degree programmes should not be using MOOCs and blended models to achieve greater modularity and be more student-driven. What scares me is what we lose by doing that. My fears are based on two premises.

 

Firstly, I believe that knowledge should be pursued for knowledge sake rather than for the needs of the world of work alone. Of course our education should prepare us for employment or entrepreneurship. To argue that it shouldn’t is folly. But knowledge has its own trajectory and logic. Mathematical knowledge, for example, represents a body of knowledge bounded by rules and procedures. It forms a coherent system which cannot be broken up into bite-sized chunks. Can one quickly study calculus without studying basic algebra just because you need calculus to solve a problem? Historical knowledge is not just about reading up on Ancient Sumeria on Wikipedia quickly. Historical knowledge is founded on a system of evidentiary inquiry within a narrative mode of explanation. I worry that just-in-time knowledge will lack a solid enough base. If we erode the autonomy of the universities and do away with academic research, what happens to knowledge? It will become shallow and facile.

 

Secondly, I believe that the discovery model of learning is deeply flawed. Of course, if left to our own devices, following our curiosity, we can discover much. It is a fundamental learning principle. But it is not very efficient. There is no earthly reason why teaching should be ditched. Being told something by someone else is as fundamental a learning principle as learning something for yourself. It is an effect of socialised learning. We learn from each other. Teaching is an ancient and noble profession, and there seems no reason to ditch it now. The scholar’s dilemma is that it is unusual to discover anything unless you know it is there, and this requires guides and mentors. The world we live in is complex and vast and we need a working knowledge of a great deal. Without extensive teaching, it is difficult to see how we could acquire the knowledge we need.

 

I would argue that we need a broad-based liberal education, focusing on critical thinking and problem solving, which gives us a grounding in Mathematics, the Sciences, the Arts and Humanities. At this stage, after a first degree, say, the best approach could well be just-in-time content delivery delivered online.

 

Just because technology can disrupt education doesn’t mean it should. Teachers have been very conservative in their adoption of new technologies, and I think this is a good thing. Education and knowledge are just too important to change willy nilly. We need to be certain that we are not destroying our evolutionary advantage, our ability to think, simply because we can.

 

Learn to Code Online – Making Waves with Code Combat

I do not usually review any platforms or tools which come with a cost, but Code Combat offers a free Introductory Unit which can be used as a stand-alone unit of work so I will set my scruples aside! My school has purchased a Code Combat license which includes 11 Units of work in either Python or JavaScript with some web development units using HTML and CSS. The platform has students create games by typing in code, and progressing from one level to another once they have completed a previous level. Each unit varies in length from about an hour to complete to several hours of work. The units introduce basic programming concepts such as For loops, While loops, nested loops and so on. Concepts are introduced incrementally and learning can be very rapid. I use it for my grade 8 & 9 Computer Skills classes. A solid diet of Code Combat is not a very good idea, so I intersperse it through the year with applications and information literacy assignments.

The platform is generally excellent, but there are a few issues which need to be taken into account when implementing it as a coding platform. You will note that I am not considering the wider question of whether to offer coding to all students. To my mind it is crucial that all students get some exposure to coding, not necessarily because everyone will be coding in their jobs, but because I believe everyone needs an understanding of how coding works, and because I think it helps develop problem solving skills generally! The command line interface, rather than the more usual drag and drop “Scratch” style interface helps develop skills of accuracy and precision.

The issue that I want to address is how the platform can be used pedagogically, because I believe it cannot simply be used on its own. The teacher cannot simply point students in the direction of the platform and walk away! I want to draw on Semantic Wave theory, which I have discussed in a YouTube video, to demonstrate what I mean. To recap, teaching and learning is crucially about the deconstruction and reconstruction of meaning (semantics). Teachers help students to unpack ideas, helping them understand complex or abstract ideas using metaphors, examples and everyday language so that they can understand it in their own terms. Teachers then help students to take these raw, more experiential, concrete or simple ideas and reformulate them in more academic understandings. An example would be when a teacher models the unpacking of a work of literature, exploring the themes and imagery of a Shakespearean play and  then scaffolding a student’s writing so that they can take incidents from the play and tease out the thematic concerns in a coherent literary essay. Knowledge is deconstructed and reconstructed.

This movement between abstract and complex and concrete and simple, and hopefully back again is described in the research literature as a semantic wave. Research into good practice in the classroom suggests that good teaching and learning requires a full range between abstract and concrete, complex and simple, and repeated waves over time. My own research interest lies in looking at what affordances technology may offer for meaning making practices in the classroom.

I have recently done an analysis of the lowering or strengthening of semantic gravity and density in one of the Code Combat units which taught web design skills (HTML and CSS). What emerged was a pattern not too unfamiliar in the classroom with traditional face-to-face instruction. The software was very good at explaining concepts, introducing an idea, such as a mark-up tag, and giving concrete examples so that students could understand what an HTML tag looks like, and what it does. Across the thirteen levels of the unit there were repeated movements between abstract and concrete as the software unpacked each of the concepts involved. Very little opportunity was given for students to explore the examples and try to reconstruct knowledge by, for example, creating novel tags. Only in the final two lessons was there any emphasis on encouraging students to build knowledge themselves.

This type of semantic wave, a movement from abstract (weak semantic gravity) to concrete (strong semantic gravity) is very common in the classroom. It is termed a “down escalator”. Down escalators are essential, and problematic only if they form the major part of the diet and are seldom accompanied by any upward movement of the wave. In other words most of the class is simply explanation, with very little opportunity for students to explore their own understandings and construct knowledge in their own voice.

This happens more often than we would like to admit in classrooms, but with digital platforms it is even more common. In fact this unit of work offers quite a decent nod at constructivist pedagogies with a fairly open ended final set of units in which the student is invited to use the knowledge they have gained to create their own web pages. When students construct knowledge, sound educational practice is to carefully scaffold this to help students draw valid conclusions. Experienced teachers are skilled at doing this, but educational software is not. Perhaps developments in Artificial Intelligence will render it more effective, but currently machines do not respond to what students are doing with much insight or facility. This makes the Instructional Design absolutely vital. If all the software does is help explain concepts to students, but never give them an opportunity to use that knowledge to reconstruct it in their own understandings and voice, that knowledge will never be internalized. Machines are ill-suited to this task. In this Code Combat unit of work the Instructional design does in fact give some opportunity to take knowledge of one tag, for example, and try it with another, or see what happens when the properties of tags are changed. There are in fact partial upward movements of the wave. part of the reason I chose Code Combat as a platform was that it does a reasonable job of explaining and giving an opportunity to practice skills, but it is clearly not enough.

In order to provide more scaffolding I had two choices. the first was to ensure that I was able to jump from student to student as they worked on the units, helping mediate the content to ensure greater opportunities for exploration. This might be practical on an individual basis, but almost impossible with a class of thirty as I had. I was also reluctant to become the expert, solving everyone’s problems. That way nobody except myself would learn anything! Debugging student code is also very time consuming, and in a class of thirty would give me, say one minute with each student, always assuming I could help spot any problems in that time!

The second option was to encourage students to work in pairs and provide peer and teacher mentoring. The aim of this was to ensure that students always had someone else present with whom to discuss what they were learning, help overcome problems when students got stuck, to try out ideas and compare code – “why does yours work and mine doesn’t?” This provides students with opportunities to explain to others why their code seems to work, and what their thinking was, and helps, I believe, build a better understanding over time. It also helps students to express their ideas about what they are doing and weakens the semantic gravity by getting them to abstract their thoughts out. Indeed when I do help a student what I try to do is ask them what they are trying to do rather than trying to fix the issue myself.

Peer mentoring and collaboration is a powerful way to bridge the gap between the instructional power of e-learning software, and its somewhat less potent ability to foster constructivist learning practice.

 

 

 

 

EduTech Africa 2017 Day 1 – The Search for Soft Technologies

DLMgdPwW0AEaJSG

I am once more attending the EduTech Africa Conference and I like to try and distill from the presentations and conversations at the Conference a sense of where we are sitting with Educational Technology in South Africa. As usual there is a narrative, repeated almost like a mantra, around the desire that technology will transform educational practice and deliver a more student-centred curriculum and pedagogy. Margaret Powers delivered a powerful keynote which summed this up succinctly and persuasively. There was an air of optimism this year which replaced the more messianic tone of previous years. Maybe it’s a sense that that goal is a little nearer, a little more achievable. Or perhaps it’s just that there is generally a new optimism abroad, despite the election of Trump, a return to the politics of hope reflected in the rise of Corbyn and Sanders, a sense that no matter how massive the task, the monolith of schooling can be re-imagined and re-envisioned just as there is a sense that the bastions of the political establishment can be assaulted.

But the highlight of the day for me was Stephen Heppell’s address. Heppell’s work on re-imagining the architecture of the school through the design of learning spaces that offer affordances for the kinds of educational transformation the Conference is calling for, is legendary, but it found a particular resonance this year with the track that I followed, that to do with the rise of coding and robotics. This link between designing classroom spaces and coding may seem tenuous, but ultimately it is about the locus of agency. Heppell spoke about the need to give agency to students through the design of learning spaces, and coding and robotics gives the same agency over machines.

Technology may be considered hard or soft, and what I mean by this is the ability to be flexible. Hard technologies do not alter easily, they are solid and fixed. School buildings are hard technologies. You cannot just knock down a wall to accommodate extra students. Soft technologies are flexible and versatile, they can be re-imagined and re-purposed on the spot. Teacher’s pedagogies are soft technologies, in that they can be changed at a moment’s notice to suit what is happening in the classroom. This is why teachers normally change their pedagogies to suit the space they are in. Teach in a lecture theatre and anything but teacher-centred pedagogies are nigh on impossible! As a teacher I have twice been the incumbent computer teacher when the computer room was re-designed, and not once was I or my students consulted! I loved Heppell’s insistence on building learning spaces to children’s specifications!

To my mind what coding and robotics offers is a soft curriculum to replace a hard curriculum, a curriculum based on problems defined by the students themselves, to which solutions are sought collaboratively. Marina Myburgh’s presentation on her exploration of a coding and robotics syllabus at Crawford, Sandton defined for me the journey many schools will be taking over the next few years as we seek to replace our now out-of-date computer skills syllabi with a new curriculum which seeks to map out how computational and algorithmic thinking can enhance all learning. There was a remarkable sense of purpose in the coding and robotics round table discussion that allowing students to explore solutions to problems they define is the way forward. The task is now to research and explore the optimum learning paths to achieve this.

This will involve not only teachers of Computer Skills, for coding & robotics extends across the curriculum. The focus on STEAM and the Maker Movement emphasizes the extent to which we need to ensure that a future in which AI and robotics increasingly threatens our job security needs to be tempered by a concerted effort to ensure that we as human beings are able to retain some control, some agency in our lives. Coding and tinkering may be the most liberating and humanist of all the academic disciplines as the 21st Century starts to get a grip!

 

 

 

Coding & The Liberal Arts

DSC00155Up until the early 20th Century Latin formed the basis of the Liberal Arts curriculum, not because everyone would be a Latin scholar, but because it was seen as something which taught one to think, because it was a rigorous discipline requiring accuracy and ability to master a logical system. It formed an excellent indicator of academic potential, and thus persisted in the educational system well beyond its usefulness as a lingua franca. In the 1900s it was largely replaced by History as a preparation for public life, politics and the civil service.

I would argue that the decline of History, and of Latin, has left a crucial void in the Liberal Arts. In a sense it has robbed the Liberal Arts of their importance in the overall scheme of things. When the main purpose of Education was to fuel the bureaucracy of the empire, the need was for individuals possessing the skills to administer vast tracts of foreign soil, far from home with a sense of duty and the ability to remain unflappable under enormous pressure. The study of Latin or History provided a sense of place and importance – it underlined the belief in the superiority of Western culture, and gave the colonial bureaucrat, trained at Harrow or Eton, a sense of their moral and cosmic worth.

The relativism and post-modernism of the last hundred years, along with the decline of the empire, has stripped away all sense of worth and purpose, and left only naked materialism. In Education, the Liberal Arts have been eaten away by the ascendency of Mathematics and Science. Now, I have nothing against the Sciences – they are absolutely vital in any education, but I believe that critical thinking needs a balance, a grounding in the Arts. I’ve just seen some research suggesting that good English teaching improves Mathematical ability. And I have a gut feeling that music is also vital. Drama too – hell, all the Arts are important, but I can’t help feeling that something is missing at the core of our curriculum: a humanistic study which is grounded in rigour and trains critical thinking.

Those of you who are still with me will be surprised now to hear that I am going to suggest that coding, computer programming fills this void. Is coding an Art? Surely it should be lumped with the Sciences. How can it fill that need for a rigorous study which simultaneously fuels a sense of moral worth and makes sense of the Universe? It is undoubtedly rigorous, and I would argue is an excellent training ground for rigorous thinking, so vital for critical thought. There is nothing quite as exacting or as unforgiving as a computer program. One comma out of place, a forgotten semi-colon can negate an entire endeavour. Programmers need to be able to conceive of the purpose and function of a program, design its outline and implement its details in ways which enhance user experience and maximise functionality. Game design, in particular, needs to engage on many levels at the interface between humans and machine. In a sense, like music, it combines creativity with mathematical precision.

I have a sense that the 21st Century is going to be all about how we manage our relationship with machines. The factories of the Industrial Age were one kind of machine, but the digital interfaces of the Information Age are quite another, and I have a feeling that the ability to hack one’s machines is what will define our ability to rise above mere consumerism. What the digital natives of the digital generation seem to lack is that ability to hack their machines. When I think back to what I did with my first computer, a ZX Spectrum, it involved almost only programming! There was precious little else you could do with it. Kids today experience computers almost entirely as platforms for products they download. Very little is done even to tweak these programs. Computing has become an act of consumption first and foremost.

We have a duty to teach kids to code so that people have the ability to act as agents of their own destiny in an increasingly complex digital world. Coding is therefore a humanistic project, perhaps the most vital expression of our humanity in a world where we are relying on our machines more and more.

What should replace History at the core of the Liberal Arts curriculum? Why, coding of course!

 
 
%d bloggers like this: