Showing posts with label new computing curriculum. Show all posts
Showing posts with label new computing curriculum. Show all posts

Tuesday, 12 May 2015

The magic of computer coding



Is teaching computing in schools just about training programmers for the future, or is it something more? Adam Lipecz considers the liberating power of technology.



"Programming is infiltrating loads of different traditional areas, … Learning how to code allows kids to do their own thing, be creative and secure a job in an area where there will be a huge shortage."
Rachel Swidenbank, Codecademy's Head of U.K. Operations (here)

"I view computer science as a liberal art. It should be something that everybody learns, takes a year in their lives, one of the courses they take is, you know, learning how to program. Because it teaches you how to think."
Steve Jobs in 'The Lost Interview', 1995.

These are visionary people speaking from deep understanding and experience of an aspect of life, and because they feel this is something that they must stand up for.

Last September, teachers of all age groups were thrown in the deep end of teaching computer programming as a mandatory part of the new curriculum. But how confident do you feel about this subject? Could you explain to a fellow teacher why computing is important in the classroom? How can you teach it efficiently and interestingly? What tools should you use? In this article, I will shed light on some possible answers.

The importance of interaction
There was a teacher who shadowed two students over two days in order to experience what it's like to learn in schools today. She wrote of her experience: “I wish I could go back to every class of students I ever had and change a minimum of ten things”.

At one point, she describes what it's like to sit all day listening to lessons, saying: “...Students move almost never. And never is exhausting. In every class, for four long blocks, the expectation was for us to come in, take our seats, and sit down for the duration of the time. By the end of the day, I could not stop yawning and I was desperate to move or stretch. I couldn't believe how alert my host student was, because it took a lot of conscious effort for me not to get up and start doing jumping jacks in the middle of science, just to keep my mind and body from slipping into oblivion after so many hours of sitting passively.”

And as a child's body, so is their mind. If they are forced to sit, passive and motionless all day, how on earth do we dare expect their mind to be active, creative and proactive?

Kids have to be challenged in the classroom - they have to be moved. Why are virtual games and smart devices so irresistible to children? It has nothing to do with screens, buttons or ones and zeroes. First and foremost, they are interactive. They let the kids decide the path of their discovery. For every action (which they can make freely and without any fear of public retaliation), there is a reaction from which they can learn. Second, virtual games are often professional products, meaning they are visually appealing, build on core genetic impulses and operate with subconscious triggers.

This is a great opportunity which lies unused by some teachers - kids love and have grown attached to technology. With the guidance of a tutor, this can be turned to the advantage of both teacher and pupil; a perfect tool to engage and have attention advantage.

Why teach programming?
Technology is all around us - it’s here to stay - and we not only have to get kids ready to use it, but build it too. They might already be digital natives, but teaching them the principles of coding helps them grasp how technology works 'under the hood', and the ultimate goal is to explain how the building bricks of technology come together to create the world we live in.

Programming is a creative, highly interactive process, providing instant and clear feedback - a cornerstone of how kids function, and how they like to learn and discover. It promotes 4C skills (Communication, Collaboration, Critical thinking and Creativity) and helps in learning how to build efficient mental models.

But should every child learn computing? I quote Simon Peyton Jones, an honorary Professor of Computer Science at the University of Glasgow to answer this question: 

“Should every child do it? From primary school? Let me ask you this: Why do we ask every child to learn science from primary school? Not because they are all going to become physicists. It’s because science teaches us something about the world around us; and if we know nothing about the way the world around us works, we are disempowered citizens. Even when you switch on the light, you know that the light doesn’t happen by magic, it happens by electricity that comes along wires, the wires can be dangerous, the electricity comes from a power station, the power station burns fuel, it may cause global warming… all of that is underpinned by the science knowledge you gained at school, whether or not you’re a scientist.”

Computing lessons are not only to train programmers for the future. Sure, that’s also a welcome by-product, as the UK will have a shortage of 249,000 workers for technologically skilled jobs by 2020. But programming, whether a potential career route or not, is an essential asset for our newest generations. 

And that's something the government has come to realise. Just glance through the main goals of the very curriculum now mandatory in every UK school, which aims to ensure all pupils:
  • Can understand and apply the fundamental principles and concepts of computer science, including abstraction, logic, algorithms and data representation
  • Can analyse problems in computational terms, and have repeated practical experience of writing computer programs in order to solve such problems
  • Can evaluate and apply information technology, including new or unfamiliar technologies, analytically to solve problems
  • Are responsible, competent, confident and creative users of information and communication technology.

What can you do?
As a teacher, you are the one expected to introduce children to the digital world of computing. This responsibility of a first impression is both powerful and potentially dangerous. You can make them love or hate it. So I would like to suggest some ideas that can help you.
  • Encourage children to tell their parents about what they learn in computing lessons, and motivate parents to be interested. As Bill Mitchell at BCS says: “I suspect children will be delighted to tell parents something they don’t know about!” 
  • Be open and motivated. Speak to fellow teachers about their ideas and methods, organise meetings on this topic or join an existing movement like CoderDojo or the UK initiative Coder Club.
  • Be prepared to accept help and be lectured by people whom you never thought you would get advice from. Even from pupils.
  • Be innovative. You don’t need pricey iPads to introduce computing ideas to kids. With some clever games, like 'How to train your robot', developed by Nikos Michalakis (aka. Dr. Techniko), basic concepts can be easily taught in a fun way. Also there are affordable tools like Codie - robotic toys which work with a smartphone app, and allow children to interact and make codes in just two minutes. 
  • Do your research. There are plenty of online tools, tablets and other touch-screen based apps, as well as educational toys and packages that you can integrate into your computing lessons.
And remember, at the end, the most important player in this game is you, the teachers, who are actually in the classrooms, helping kids to reach their dreams.


By Adam Lipecz, co-founder and CEO of Codie, making robotic toys that teach the basics of programming. Find more information on Codie at: www.indiegogo.com/projects/codie-cute-personal-robot-that-makes-coding-fun. 



Tuesday, 28 April 2015

What does it mean? Scratch terms you need to know



A brief guide to some of the key terms and features of popular coding tool Scratch.


Scratch is swiftly becoming one of the most popular tools for teaching coding in the classroom. We definitely recommend it - it's great fun and simplifies the programming process really well - but it does come with its own lingo, which teachers will need to know before they start using it with pupils.

The techno-whizz need go no further. This guide is for anyone who thinks hats are for heads, stages are for theatres and Sprite is a fizzy drink of lemon and lime.


Scratch user interface - Includes everything needed to create a project. On the left is the stage and sprite list, in the centre the blocks palette (filled with click-and-drag code fragments called ‘blocks’ - see below), and on the right the scripts/costumes/sounds editors.

Blocks - Puzzle-piece shapes which snap together to create code. There are 12 categories of blocks, including motion, looks, sound, pen, control, sensing, operators, and variables.

Sprites - Objects which are used to make up Scratch projects. They can be user-created, uploaded, or found in the sprites library.

Costume - Images used to define how a sprite looks. Costumes may be of these image formats: JPG, BMP, PNG, or GIF. Each sprite as at least one costume, but can have more – for example, the position of the arms and legs of a dancing sprite may change as it moves.

Stage - The term for the background of the project. It can have scripts, backdrops and sounds. No sprites can move behind the stage - the stage is always at the back layer.

Backdrop - Costumes for the stage. Backdrops are used to change the appearance of the stage.

Script - A collection or stack of blocks that all interlock with one another. They determine how the sprites interact with each other and the backdrop.

Hat block - The block used to start a script – for example, the hat block may program a game to begin when the green flag is clicked. Hat blocks are designed to sit at the top of a script, and no block can be place on top of them.

Green flag - A button which, when clicked, will start all scripts in that project that are hatted with the ‘When Green Flag Clicked’ block.

Stop sign - A button which, when clicked, stops the running project immediately.

Project sharing - Allows others to view your projects, look inside them, and remix them. To share your project, click the ‘share’ button in the orange bar above the project screen. Sharing a project shares it with users all over the world, so avoid including any personal information.

Project notes - Notes that accompany a shared project, explaining to others what the project is about and how to use it. They appear to the right of a shared project’s webpage, and are visible to all users.

For more information, visit: wiki.scratch.mit.edu/wiki/Scratch_Wiki_Home.

For ideas for using Scratch in the classroom, see Dylan Ryder's article, Starting from Scratch, in the most recent issue of Creative Teaching and Learning magazine.

Friday, 13 March 2015

Have you cracked the code of the new computing curriculum?

The new computing curriculum came into force back in September, so the pressure is now on to deliver outstanding results. Here, primary deputy head Anthony Sharp explains the steps his school has taken to successfully deliver new terrifying topics such as algorithms, logical reasoning and debugging.




In a recent survey from CPD for Teachers, 52 per cent of headteachers who responded said that they felt their school was not successfully delivering the new computing curriculum.

And it's not surprising. There have been seismic shifts in what we expect from teachers to deliver the new computing curriculum. ICT used to focus purely on computer literacy, teaching pupils how to use software packages - for example, creating PowerPoint presentations or producing documents in Word - and e-safety. With the new curriculum, the focus has changed to understanding how computers work, including how to program them.

We have good teachers here at Midfield Primary who are competent and can teach ICT to a more than acceptable standard. However, when we reviewed the new computing curriculum and compared it with our current teaching programme, clear gaps emerged. Quite quickly for example, we saw that there was a gap in programming skills in our school, as well as a lack of confidence from our teachers who were concerned that they would not be able to deliver parts of the new curriculum.

My suspicions were confirmed by the results of the aforementioned CPD for Teachers survey, which showed that we were in the same boat as many others. Forty-four per cent of schools who felt they were not delivering the new computing curriculum effectively had also not received any face-to-face training.

First steps
It was clear that our teachers needed more guidance. We needed to prioritise computing curriculum training to re-set teachers’ thinking, eradicate the fear of programming and give them further information on how to deliver it effectively. We selected a course that met our needs in terms of being practical and hands-on from the start. It covered the fundamentals of computing programming through exciting tasks such as drawing computer graphics, creating simple games and interfacing with the real world.

Resetting thinking
When you talk to someone who doesn’t like maths, there’s often no particular reason they don’t like it - they just don’t. The same applies to a lot of teachers and adults with computers. The approach taken in the training course really helped to break down those feelings and reset their thinking.

Now, for example, the teachers explore how they can engage the children in programming, rather than the preconceived idea, which was along the lines of opening up a computer and looking at wires. This gave them the confidence to approach it. Now, far less concerned about what they don’t know, they focus on what they do know. The cross curricular content from computing compared to science, English and maths is quite extensive, so using the skills and working with these experts to help deliver programming was a great starting point for our school.

Bringing coding to life
Much to our surprise, we didn’t even go near a computer at first! The course instructors had us push all the tables and chairs to the side of the room and literally walk through a program.

One of the methods we used was to create an obstacle course which was navigated by answering/asking questions. The responses to the questions determined the player's next step. This brought programming to life and helped us to understand the way that coding works. It was a simple way of demonstrating binary logic, and we will use this to introduce basic programming to our primary pupils.

In the afternoon, we applied the knowledge from the activities of the morning to digital situations. Overall, the face-to-face training was great and broke down any aversions teachers may have had about how to engage the children. It was fun, engaging and very motivational.

One tricky area for us in teaching the new curriculum to primary school children was making it engaging and fun for children of a young age. The course gave us some really innovative methods of delivery, which has helped us engage children so that they enjoy it.

Confidence to deliver
The feedback so far has been very positive. We now deliver and prepare for lessons as teams so that we can share the knowledge and use a collaborative approach. It has made our teachers less nervous and has increased confidence in the classroom, as it gives them ways to approach it and they are far less concerned about what they don’t know. The focus now is on what they do know and what other existing skills they can draw on to help them deliver programming.

Embrace the IT geniuses
The fear at our school for many teachers used to be that once you set children on their way, it’s possible that they will steam ahead of the adults. This is natural, as adults are scared to press the wrong button, whereas children don’t have that fear so are free to explore. We’ve learned not to fear this situation - in fact, the opposite! We are embracing the possibility of this as a positive outcome, and we can use those skills and even channel them into our own teaching.

We are still at the start of our journey but, I believe, in a good place to move forward in delivering the new computing curriculum with confidence.

Five top tips for delivering the new computing curriculum:
1. Focus on what the teachers already know.
2. Explore curriculum crossover from maths, English and science.
3. Invest in face-to-face training to give teachers confidence.
4. Team up in a collaborative effort to engage your class.
5. Focus on making it engaging and fun for both teachers and pupils.


Anthony Sharp is deputy headteacher at Midfield Primary School in Bromley, Kent. Midfield chose to prepare their teachers for the new computing curriculum with the CPD for Teachers 'How to teach programming' course. Find out more at: www.cpdforteachers.com.

Looking for a short but thorough introduction to programming? In this free training video and accompanying article, Chris Thomas explores the basics of programming and two tools that will make teaching it a lot simpler.