Keeping up the Momemntum Going through Python with everyone in our Code Club at once has been very rewarding. So far, the feedback has been that they feel they've been learning more than with Scratch - although some kids love Scratch, many found it a little limiting after round 6 months. As long as they progress with Python, most have been engaged and keen to be challenged - however, if they hit a wall and didn't get help after a few tries, some would become frustrated or distracted. Whereas Scratch issues were more superficial issues such as typos or understanding the interface, Python issues were more around understanding concepts and what a snippet of code was doing. By being more vigilant with anticipating issues, and getting to kids quickly, we were able to keep things flowing, and while more thinking was sometimes required, our Code Club kids seemed to enjoy the challenge, and felt more accomplished when they got things working.
Owning Their Coding Interestingly, I also discovered that some of our young coders were still carrying on with Scratch in their spare time at home. It was awesome to hear that they had taken ownership of their own projects and were happy to keep going. These kids also did very well with Python. A number of kids also went home and finished a bunch of Code Club Python projects on their own - this meant that they could work on more advanced activities during Code Club sessions, which would also pave the way for other kids.
We Got Some Hardware It has been a while since we got some older Raspberry Pis robots to go with the Raspberry Pi computers I donated to our club a few years ago. It was exciting, when earlier this year, I was approached about writing some content for some introductory workshops at a school event - the deal was that the organising committee had some money to buy some BBC micro:bits and a couple of BBC micro:bit electronics kits. The workshops consisted of four short 15 minute sessions, for which I wrote four different projects; the easiest would display happy or sad faces, when the micro:bit was tilted from side to side, with others building in complexity, until the fourth involved programming two micro:bits to send commands over a peer to peer wireless communication channels. I noticed that many of the attendees were pleasantly surprised at how much fun they had, with some staying on for more than 1 session, so they could do more of the projects. This event went well for us, as it helped show the community that the school is actively supporting these activities and it also meant that the small budget put aside for micro:bits could be spent on some other hardware for our Code Club and the greater school. This turned out to be some protective cases for the micro:bits and some Adafruit Circuit Playground Express (CPX) microcontrollers (these are similar to micro:bits but have multicoloured lights and a few different sensors, and are slightly easier to transfer code onto, especially when adding code libraries to support add-on hardware like OLED screens and sensors). The CPX units are also programmable in Python or graphical MakeCode, with great support from a strong open source community and manufacturer, making them much more expandable than some of the more expensive proprietary robots that are locked into using only their own limited add-ons. The great thing about this hardware is that it really shows the power and scope that comes from learning a more extendable language like Python, and the kids get excited when I explained that there's thousands of Python packages out there to help interact with real world hardware. Even being able to control a micro:bit robot and RBG lights last year, was a great way to tie together the skills gained from the Code Club Australia exercises.
We have since been able to re-use the content written for these workshops, as well as the electronics kits, that have both MakeCode and Python examples. In other news, since last year, the school's 3D printer has broken down, so we'll need to find time to have a small working bee and fix it, so we can incorporate some printing with Python projects.