What young people can achieve with code

Every week at Code Club, thousands of children as young as eight are learning how to code. Many of these children are using their newfound knowledge to make things that are smart, creative, funny, and also useful in their wider community.

Coolest Projects is an annual showcase of the work that young digital makers are producing in Code Clubs, CoderDojos, and Raspberry Jams across the world. We spoke to some of the young participants who were at the UK event last month to find out more about what they’ve been coding.

Liya and Gabriella, both 11

Liya and Gabriella won the Scratch category at Coolest Projects with their game Toad Ahoy! The girls used the skills they learned at their Code Club in Somerset to code a complex multi-level game in Scratch.

27909384898_e866b060a1_z (1)

Can you describe your project?
Liya: Our game is called Toad Ahoy, and in the game you have the Mario character Toad and you have to guide him to Toadette. To do this, you go through an obstacle course, but there is a possibility that you could fall into the lava and die, so you have to be careful.
Gabriella: In our project, you run around the world collecting stars and moving towards the portals. However, you have to be quick! You are being timed, and the fastest people will reach the leaderboard. The amount of stars that you collect is doubled, then taken away from your time, so the more stars you collect the better — if you can be fast at the same time.

What was your favourite thing about attending Coolest Projects?
Liya: My favourite thing about Coolest Projects was that you could share all these amazing things that these kids have done, and you also learn more about different projects, so you could be encouraged to make another project in that style.
Gabriella: Our experience at Coolest Projects was great, and I particularly enjoyed looking at other people’s projects.

Haseeb, 8

Haseeb caught our attention at Coolest Projects due to how confidently he presented his coding project to the judges. He learns how to code in a variety of programming languages, including Scratch, HTML, and Python, at his Code Club in a library in London.

SAMSUNG CAMERA PICTURES

Can you describe your project?
Haseeb: My project name is Robotic Pet. The aim of it is to entertain. It has two functionalities:

  1. Follow using Pixy Cam: it first creates a signature of the object shown and keeps it inside its memory. Then, through a feedback loop, it adjusts the position of the robot.
  2. Paint with music using colour sensor: when different coloured cards are placed, my Robotic Pet can detect the colour and play a different sequence of tunes. It is programmed using an ‘if and else’ loop.

 

 

What was your favourite thing about attending Coolest Projects?
Haseeb: My favourite thing was:

  1. I made lots of new friends
  2. Getting to try out lots of cool programmes and gadgets
  3. The swag bag with cool stickers and especially the Blinkt, which I used to make a mini fireplace

Zaahra, 9

Zaahra had one of the most beautiful projects at Coolest Projects and even designed her own T-shirts inspired by her Scratch game! She masters coding every week at a Code Club in East London.

zaahra (1)

Can you describe your project?
Zaahra: My project is a game that I developed on Scratch. It is called Mystical Madness. The aim of the game is to move the unicorn to catch the rainbow cupcakes — the more you catch, the more points you get. Be careful of the grey cupcakes, or you will be out!

What was your favourite thing about attending Coolest Projects?
Zaahra: My favourite part of Coolest Projects was to meet lots of other children and seeing all the different projects they have developed. I felt inspired, and I want to do even better next time!

Inspire young people to learn to code

These impressive projects prove that you are never too young (or too old!) to learn how to code. Improve your own tech skills while inspiring the next generation by becoming a Code Club volunteer at www.codeclub.org.uk/start-a-club.

Do you know someone who would make an amazing Code Club volunteer? Share this post with all the teachers, parents, developers, and other awesome people you know!

How to move from Scratch to Python in Code Club

Most Code Clubs start out with Scratch, but when the time is right, you might want to try out some text-based languages such as Python in your club. In this post, we explain how to introduce the Python language in a fun and engaging way.

When to introduce Python in Code Club

Many programmers use text-based languages like Python because of how efficient and powerful they are. While Scratch is a powerful language that can be used to create quite sophisticated games and programs, a time may come when your learners are asking you how to perform tasks that are overly complicated in a block-based programming language and would be much easier to do in Python. This is a great time to consider introducing this language!

hero_360fab49-0552-4b20-87e3-52ef956d5f96Code Club, meet Python

Here are a few great ways in which you can start introducing Python as a concept to your Code Clubbers:

  1. Show them real-world examples of the language: if you aren’t familiar with Python yourself yet, don’t worry! Get your Code Clubbers excited about Python by showing them that the language is used to create many of their favourite sites. This list shows that popular websites such as Google, Facebook, and YouTube are use Python code.
  2. Prove the power of Python: if you are familiar with Python, you could try writing a script that demonstrates how efficient the language is. For example, you could use the language’s built-in mathematical functions to demonstrate how quickly you can solve a maths exercise from a textbook!
  3. Automate tasks with Python: you can also try slowly incorporating Python into the running of your Code Club sessions. For example, you could write a script based on our Team chooser project that randomly picks one of your learners to do show-and-tell at the end of the session.

team-chooser

How to start writing Python in Code Club

Similarities between Scratch and Python

Once you have introduced your learners to the concept of Python, it’s time to get them writing their own code. This means acquainting them with Python syntax (i.e. the specific rules that determine how the language needs to be written).

A great way to do this is to get the young people to translate a simple project they have made in Scratch into the Python language. The Code Club Scratch project Username generator is perfect for this, and the following image demonstrates how one block from the project can be written in Python:

2-3-5

You can find instructions on how to translate this entire project into Python in the Raspberry Pi Foundation’s free online course Scratch to Python: Moving from Block- to Text-based Programming.

Another useful exercise is to show the children how all the basic Scratch blocks can be written in Python. You could ask different Code Clubbers to choose their favourite Scratch blocks and then work together with them to find out how that block would be represented with Python. In our Scratch to Python online course, you can also find illustrations of many Scratch blocks and their Python equivalents.

Code Club Python projects

Just like with Scratch, our Python projects are designed to gradually introduce children to the syntax and concepts of Python. We currently have two Python modules, starting with the project About me. In this project, learners write a Python program that tells people about themselves using the print() function and ASCII art.

Screen Shot 2018-06-06 at 13.41.12

If you’re not familiar with Python, don’t think this means that you can’t introduce the language in your Code Club. Simply try out each project before introducing it to the children and you can develop your Python skills together. You too will start to see how using Python can help you with day-to-day tasks!

Having fun with Python

We know learners love the graphics in Scratch, and moving to Python doesn’t mean you have to say goodbye to nice visual results! Our Turtle race! project in Python module 1 is a great one for demonstrating the fun games and animations you can create with Python:

turtlerace

Using Python in your Code Club means you can also work on long-term projects that show learners the scope and excitement of text-based programming. For example, Astro Pi is an annual coding competition that runs young people’s Python code on the International Space Station, and we always encourage Code Clubs to participate. What’s more exciting than sending your code into space?!

Debugging: community advice

As your Code Clubbers get to grip with this new language, a lot of your session time might be spent on debugging (i.e. fixing errors in code). We asked two Code Club volunteers about their top debugging techniques:

Lorna Gibson, Code Club Regional Coordinator for Scotland:
“When children in my club hit an error in Python, we turn fixing it into a game of ‘spot the difference.’ First I encourage them to compare the worksheet code with their own. If they ask for help again and promise they have already tried to spot the difference, I will go over and have a look. I win a point if I can spot the difference in under a minute. Motivated by competing with me, more often than not they ultimately spot the error anyway. It’s all about scaffolding and building problem-solving skills for the future.”

python-error
Darren Townsend, Code Club volunteer:
“I use comparisons of Scratch to Python at the beginning, for example to explain that ‘while True’ is the same as the ‘Forever’ block. I also have some Python cheat sheets which give examples of common Python code. Some of the learners find it easier to debug Python than Scratch, because Python gives you error messages to indicate what went wrong. It’s usually down to spelling errors!”

More guidance on transitioning from Scratch to Python

Feeling ready to take on Python in Code Club? Now is a great time to take the Raspberry Pi Foundation’s free online course Scratch to Python: Moving from block- to text-based programming.

Why we volunteer for Code Club

At Code Club we are lucky to have thousands of volunteers who give their valuable time each week to help us on our mission to get young people coding. This National Volunteers’ Week, Caroline Vaan-Canning, our Regional Coordinator for the South West, reflects on what it is that makes people volunteer their time for Code Club.

Time is a funny thing that means different things to different people: numerous physicists and thinkers have attempted to define time, and no single definition is universally accepted.

I have been the Code Club Regional Coordinator for the South West for two years, and in that time, I have had the privilege to meet some of the most wonderful volunteers any charity could hope for. Be they educators, technology professionals, students, or parents, they are all united by their willingness to donate their time in order to support young people learning to code.

Screen Shot 2018-06-06 at 15.03.36

Caroline volunteering at Code Club

Why do these lovely people volunteer for Code Club? I posed that question to four volunteers and received four different, insightful answers.

What motivates our volunteers

Elena from Somerset said she was inspired to volunteer after she saw the impact Code Club was having on her own children. “Code Club is a wonderful way to help children broaden their minds. My children couldn’t get enough of it, and we ended up going to all the sessions available at our local library. As a parent, I have watched my children’s skills grow. That’s the reason I became a volunteer — to help other children’s minds grow too.”

27909384898_e866b060a1_z

Members of Elena’s Code Club recently won the Scratch category at Coolest Projects UK

Meanwhile, KS2 Computer Science educator Neil told me about how being a volunteer has allowed him to develop his own skills. He said: “By running a Code Club, you are not only helping young people to understand the whole coding ethos, but also the way it works in the world around them. As a bonus, we also get to learn with them and have a great time while doing so. You may even get a new career out of it!”

For software engineer and STEM Ambassador Milo, it’s the pure enjoyment of Code Club that keeps him coming back: “Working with children to create fun and imaginative projects is both enjoyable and rewarding. The ideas they come up with often shock me due to their ingenuity and eccentricity.”

volunteers-week

Milo, Elena and Steve at Code Club

Finally, it was a desire to share his love for coding that led software developer Steve to volunteer with Code Club. He said: “For volunteers, Code Club provides the opportunity to share a passion and enthusiasm for coding, and it is very rewarding to see the children develop. For children, Code Club gives them the opportunity to learn a great skill in a fun and engaging manner.”

Why you should volunteer with Code Club

These volunteers and others like them know that life is simply better when you give something back: an hour spent at Code Club doing something to make someone else’s day better, makes your own day better too.

From my own volunteering experience I know that donating time to Code Club can truly make a difference to everyone involved. As a volunteer, the Code Club learning resources help you advance your problem-solving abilities, and encourage you to build your own ideas, no matter what level your coding skills were at before you started. It’s why the Code Club volunteering network continues to grow across the world.

If you are reading this as one of the many wonderful volunteers out there, I just want to say a huge thank you to you for supporting Code Club. If you know someone who would benefit from volunteering with us, please spread the word to them by sharing our website on Twitter and Facebook, or by inviting them to our next meetup.