Last year, we set about working out how we could cater for grades 3 and 4 (ages 8-10 years) with a code club running on a separate day to our grades 5 and 6 club. A few of us were keen to have volunteers, both from a cost perspective, and the value from having keen volunteers that want to make a difference. This also gives us the option to allow parents to use the money that would have been spent on a paid code club, for hardware that kids can take home, similar to an incursion. As always, Code Club Australia were really supportive (Thanks Code Club Australia Staff - you're all awesome!) - we now have a good balance of school staff, parents, and volunteers (both from Code Club Australia reaching out, and past students) for both our code clubs.


Scratch 3!

Those of you that deal with school or code clubs would be aware that the new Scratch 3 version was launched at the start of the year. I've been doing some work with Scratch 3 recently, and although the most obvious changes are cosmetic, there's also some big updates from version 2. There's a post from the Scratch team regarding the launch and updated reference material. Code Club Australia have also done a great job of summarising the changes. All their projects have been updated to use Scratch 3, keeping links to their old version 2 curriculum, and offline Scratch for those code clubs without a good Internet connection. For those using Scratch on the Raspberry Pi, there's also this post with their upgrades.

I recently updated firmware for the school's Lego Mindstorms EV3 brick to let it work with Scratch 3 - there's actually three ways to update, but I'd recommend the downloaded software via USB as being a little more reliable. To interact with Scratch 3, you'll also need to install the Scratch Link software on your mac or windows computer. One of our volunteers noted that when installing Scratch Link on Windows 10, it wanted the creator software upgraded, and then wouldn't recognise the update until he reinstalled Scratch Link. So far, it looks like Scratch Link is closed source and unfortunately not yet implemented on the Raspberry Pi (Raspbian) or other Linux distributions. However, this is still a nice way to get a bit more life out of those old Mindstorms sets!

Although it's nice to have some micro:bit support in Scratch 3; for most micro:bit accessories, and for drag/drop coding on Circuit Playground Express (CPX) and other devices, MakeCode is the platform that currently offers support with a large community of developers and vendors contributing. As we already have lots of MakeCode projects written up, the new code club will have plenty for those that get through the Scratch projects, and want to interact more with physical lights and sensors.

Preparations for the new grade 3/4 club

We've learned a few things over the past few years, while running our existing grade 5/6 code club. For us, and I know I've said this before it's been important to set clear expectations for both the kids attending, and volunteers/teachers that run the club. Since kids at our club are voluntarily attending and there's a waiting list, we make it clear from the first day what types of behaviour will get them kicked out after two warnings. This places a certain amount of value on their place in code club and discourages the club being leveraged for free child care. Using school communications for keeping track of attendance and communicating weekly activities with parents means that, if there's any issues, everyone is on the same page. Making sure every kid has their logons for computers, Scratch, Trinket, and TinkerCAD is something that means less wasted time and more value for kids. So we send out communications to parents at the start of every year, explaining that these are required for their child's participation in code club. Talking to some of the teachers, I was pleasantly surprised to find out that some are also onboarding code club students prior to their first code club, even if not required in class in that first week. Still, life is busy and we do end up with kids needing to either reset or remember their passwords on the first code club session - those whose parents haven't created accounts need to remind their parents, and we can reminds parents, through school communication channels, that these need to be created.

Keeping on track, initially

Something I'd like to see happening, with our volunteer/teacher-run 3/4 club, is to maintain good coverage of the Code Club curriculum, which wouldn't have happened with a paid club. With three modules for Scratch, rather than two previously, there's plenty to keep kids going. While it's just good to see kids experimenting with code, it's even better when they're challenged and engaged with problem solving and trying to model solutions to problems they come across. For the long term, the kids that play with Scratch during code club, but don't get any projects completed, eventually get bored, distracted, disruptive, or drop out. When we try hard to keep kids moving and completing projects, they acquire new skills and concepts faster, and seem to stay engaged for longer. Since we have more of an idea of the minimum skill set for those that complete projects, it's easier to have them work on more advanced workshops and projects later. This approach also lets the quieter kids get involved, because we can see who has put in the hard work, regardless of how loud they may be.

So that's a quick roundup of the first session for our new grade 3/4 code club! I'll get onto what's happening with the grade 5 and 6 club, and some other ideas, soon.