Cracking the code through creativity

Simon Davenport

Simon has worked in education for a number of years and joined LEGO Education in 2011. He was responsible for the organisation of the First LEGO League—a programme using MINDSTORMS EV3 that aimed to inspire young students in Science, Technology, Engineering and Maths (STEM) careers.

Follow @LEGOeducationUK

Website: Email This email address is being protected from spambots. You need JavaScript enabled to view it.
Image credit: WALL-E // Pixar Animation Studios. Image credit: WALL-E // Pixar Animation Studios.

Computing has received somewhat of a mixed reaction from schools – after all, just the word “code” exudes a sense of mystery. There’s a reason why detectives will use the term “cracking the code” to describe a puzzle that needs solving, or obstacles that need to be overcome.

But while the ability to write and use code is a skill that needs to be learned and practiced, it is a tool for opening doors, and one of the most powerful mechanisms for creation in the tech-fuelled present, which will only become more important in the future.

However, sparking that initial understanding and interest in the subject can, admittedly, be quite difficult. At first glance, lines and lines of text on a screen “Beginning with a graphic-based platform can reduce the initial shock.”can be very intimidating, especially for younger pupils, so giving them a vehicle through which to comprehend the thinking behind this language is essential to getting that first “lightbulb” moment.

One of the key elements of this is to be as visual as possible when it comes to early coding practice. While it’s tempting to jump straight into programs such as Python and Java, as these are the tools that young pupils will most likely be working towards, beginning with a graphic-based platform that uses images and simple instructions to program a function can reduce the initial shock of an entirely new language. These can include drag-and-drop platforms, where the pupil essentially builds a code using pre-existing segments.

Moving on from this, getting hands-on with Computing is the next best step. This may seem counterintuitive, when the whole point of coding is that it is entirely digital. But there are plenty of ways in which this can be brought to life, such as through robotics. By giving young pupils the chance to build something of their own with a specific function in mind, they gain more insight into the workings of their creations and how the thinking behind the code works.

As an example, you might ask your pupils to design and build a vehicle using basic components, that they can then program to move in a specific way: travel forward 10cm and then turn left to travel 5cm for instance. This could be expanded to include other mechanisms, such as motion or light sensors to change the methods of input that direct the vehicle. Pupils could use the motion sensor to detect where and when objects get into their creation’s path, using the code to move around the obstacle. Even further, the vehicle could use other motors and attachments to perform other functions, like picking up items, or making a sound when they reach an obstruction. The opportunities to extend these activities are wide-ranging, so pupils have the freedom to create a great many things – the only limit is that of their imagination.

Real-world examples are great in any subject to contextualise the information being learned and how it can be applied in an appropriate way. So, on top of having practical activities, you can align this to a situation in which the pupils have to problem-solve. As a potential activity, you could pose the scenario in which a factory needs to create robotic forklifts that can pick up heavy crates and objects autonomously. The pupils will need to first build a vehicle that is sturdy enough to lift a significant amount of weight safely and securely, before coding it to understand where it needs to go, and how to pick up the objects when they reach them.

As part of this problem-solving, it’s also worth getting pupils to work in teams to improve their communication and collaboration skills. It might be that one pupil has a natural aptitude for the coding side of things, whereas another needs help with this, but is very good at considering the mechanical elements, like how a component might need to pivot to move the arm of a forklift and thereby perform its function. Through this, both pupils can help each other with the areas that they aren’t as strong in, promoting skill development in both children, while also allowing them to see the learning outcomes of the lesson. After all, they say that one of the best ways to consolidate learning is to teach others, so the potential for growth in all areas is very high.

An important thing to remember when teaching and learning coding is that it is perfectly fine to fail. Sometimes, the code won’t work as initially expected, and things will go wrong, and this can be incredibly“When it comes to coding, half of the fun comes from trial-and-error.” frustrating. However, when it comes to coding, half of the fun comes from trial-and-error. You might find that the code you’ve put together drives your vehicle straight off the table! This isn’t the end of the world, it’s just another chance to learn things. Find out where the code went wrong – was it the distance set, or too much speed – perhaps the sensor wasn’t programmed to pick up the right information to stop? This gives you a chance to debug the program, running several versions until you find the right combination for what you’re trying to achieve. This also promotes resilience in young pupils, who otherwise might give up after one try.

It might not even be the code that needs fixing; it could be that the sensor isn’t placed correctly, or the tyres used on the wheels don’t have the necessary grip to drive on slick surfaces properly. Looking for practical reasons why the test didn’t work is just as important, and this also promotes cross-curricular learning, considering things like physics and other sciences in these experiments. In terms of cross-subject learning, it’s also possible to use real-life situations to extend coding to other disciplines; for instance, you could ask pupils to build an earthquake simulator and test housing structures, bringing Geography, Maths and Physics into the activity.

When it comes to “cracking the code” in Primary Computing, making things as real and tangible as possible is key. By promoting imagination, creativity and collaboration in these lessons, coding won’t just be seen as a complicated, logical task, but an opportunity to build and design whatever they can dream up. The concept of solving real-world problems will inspire a long-term interest in the subject, possibly even getting them to consider a career in technology!

Want to receive cutting-edge insights from leading educators each week? Sign up to our Community Update and be part of the action!

Read More

Your subscription could not be saved. Please try again.
Your subscription has been successful.

Sign up to our newsletter

Get the best of Innovate My School, directly in your inbox.

What are you interested in?

By signing up you agree to our Terms & Conditions and Privacy Policy.

1,300+ guest writers.
ideas & stories. 
Share yours.

In order to make our website better for you, we use cookies!

Some firefox users may experience missing content, to fix this, click the shield in the top left and "disable tracking protection"