Are you passionate about STEM (Science, Technology, Engineering, Math), been looking for a volunteering opportunity but can’t find anything locally that suits you. Then why not consider starting your own Code Club. Don’t stress…. we’ve (mostly 🙂 ) got your covered. This post will give you a view of the various dimensions you might need to consider when starting your own Code Club.
The word ”Code Club” can be a bit misleading, the word literally means that it’s members get together for the purposes of writing code. While writing code might be one of the activities that participants of a Code Club might indulge in there are a whole lot of other activities that participants of a Code Club do indulge in on a regular basis. These could could include – making and creating mechanical models, performing science experiments, tinkering with electronics, designing and building robots, trying out 3D printing, designing models using 3D modelling software, designing games, building websites, development of custom phone apps, including dabbling with amateur radio. Sometimes i wonder if we should just rebrand all Code Clubs as Maker Clubs or Creator Clubs where makers, tinkerers, creators and innovators get together to play, learn, experience, fail and challenge themselves with different technologies and platforms while gaining critical life skills along the way.
A bit of history – I had been volunteering at Vincent DePaul (A beautiful organization which runs op-shops across Australia, the profits of which are used to serve the homeless, the poor and the needy) on the weekends, within the receiving area where I was responsible for working with a few team members, taking in the donated items, sorting them before racking and stacking them. I did the role for a few months, soon realized that I wasn’t enjoying it as much as i thought i would. I considered my options and it was quite clear to me that I had to move on. At some level i did take away some satisfaction from the role, but it was also apparent to me that i wasn’t really wasn’t making use of my skills, talent to the extent i would have liked to. Life has its ways, everything happens for a reason. I decided to quit and go back to the drawing board. It led to some soul searching.
Over the coming weeks i spent time researching volunteering options in the STEM space. I soon realized that volunteering at a Code Club was probably an option worth considering. I tried looking around for volunteer run Code Clubs here in Melbourne, Australia but it was a shock when i realized that there were only a couple running consistently and neither of them were in a position to take on volunteers (for various reasons). So i was left with the only option i.e. to start my own Code Club. I committed myself to starting a Code Club not knowing the challenges that lay ahead. It was going to be a tough first few years. However i don’t regret my actions one bit, starting my own Code Club is one of the most satisfying things i have ever done in my life.
Let’s start out by looking at the following dimensions worth considering when starting your own Code Club.
Know why you are doing it – This one might seem a bit philosophical but it’s worth spending sometime doing some soul searching, writing things down and thinking through why you are actually doing this. There are a few reasons i say this. Forcing yourself to think through why you intend to start a Code Club and writing things down will hopefully force you to come to terms with the actual reasons behind why you want to do it. Things sound cool at first, but when you ask yourself why, why why, why and why…..you might eventually get to the right answer. I am a strong believe in the Toyota Way including the use of the 5 Why methodology. If you are keen to know more I would suggest reading up on the, “5 Why principle”, it’s part of the “Toyota Way” of doing things. To keep things short, whenever anything went wrong at Toyota they would pause the entire production line (for that product part) start their blameless analysis by asking themselves 5 Why’s and almost every time before they got to the 5th Why they would have their answer or have enough information that led them to the answer. I encourage my kids to use the “5 Why principle” in class to work through issues they encounter, try to find a solution to the challenge themselves before they ask others for assistance.
An easier approach is to find a sponsor who can help out with insurance, rent for using the premises, etc. Another option could be to approach a local library and see if they are able to take you on a volunteer or possibly look for a community group who has the facilities and keen to run such a program. Finding an organization that owns space, has the wherewithal to support such a program, cover you for insurance, etc. can really make things easy for you, reduce your workload during the startup phase.
Alternatively there could be hard times ahead, you might need to spend extra personal time initially to keep everything going, you could even end up needing to invest small amounts (a few 100$) to get some basic kit (electronics, breadboards, etc.) for the kids to work on or possibly pay to hire space for the club initially (which i was forced to do for the first year), so it’s very important to know why you are doing… what you are doing. It’s best to be upfront with yourself, know what you are getting into, if possible talk it through with a few experienced club leads to understand what’s expected of a club lead before you dip your feet into it.
Starting a Code Club is the best experience in the world, there’s nothing else (yet that i have discovered) that i would give this up for, but it really pays to know why you are doing what you are doing so when the going gets tough…the tough (human inside you) can get going as well.
Should I register as a CodeClub or as a CoderDojo – CodeClub and CoderDojo are two not for profit organizations that are now under the umbrella of the Raspberry Pi Foundation. You can look both of them up at the Raspberry Pi Foundation website. You don’t have to align yourself with one or the other, i would recommend aligning yourself with both, there’s absolutely nothing to loose. We started off by registering as both a CodeClub and a CoderDojo. However we decided to go with the CoderDojo brand, but we are still registered as a club at both the websites. It dawned on me later that the CodeClub program was designed for teachers or librarians within schools and libraries while the CoderDojo founation were catering to volunteer run clubs. Now there’s no hard and fast rule as such and i have seen variations to that paradigm.
There are many benefits of adopting the CoderDojo or CodeClub brand, you get listed at their websites, you get access to all their themed learning material, you are able to make use their logos as part of your branding (As long as you are abiding by their rules), you can reuse their promotional material when marketing your groups volunteer services, you get access to their training content, you get to participate in CodeClub and CoderDojo live training events and most importantly you get to be part of a larger global family of clubs around the world. To me it’s an absolute no-brainer. I wouldn’t re-invent the wheel and create a new brand unless there was a very good reason for doing so.
Obtaining Insurance cover – The reality of living in a first world country like Australia is that you will not be able to run a club or hire a room or even hire basic resources to run your club unless you have insurance cover. At minimum you need to invest in, “Public Liability Insurance”. “Public Liability Insurance” is not cheap and the last time i checked i was given quotes ranging between 2000$ – 4000$ for a cover of upto $ 10 million. For a not for profit group or a volunteer group (like ours, with no funding sources other than our own personal salaries) that’s a very large sum of money, especially if you are having to pay that amount on an annual basis. “Public Liability Insurance” is an absolute must, you have to make sure you are covered at all costs before you commence operations. If you align yourself with a library (As a volunteer) or setup a CodeClub within a school or college then it’s highly likely that you will not have to worry about “Public Liability Insurance” since that would been obtained by the organization you are working for. Either ways, do your homework and make sure you’ve invested in the right amount of “Public Liability Insurance” and have the relevant cover in place before you consider commencing operations. It’s important to do your homework and get things right.
We absolutely struggled, didn’t know what to do because while we had the willingness to devote our personal time, effort to run the club we were not in a position to spend 2000$-4000$ annually for “Public Liability Insurance” which was a must. It was a terribly frustrating time, i ran from pillar to post, people would listen to me but no one took much interest until i met up with a fellow Codeclub lead who recommended that i meet up with someone she knew. The universe had answered our prayers, the stars had to literally align for us to find a sponsor. We eventually found a sponsor in a very considerate Not For Profit (NFP) CEO who was willing to pay for our annual insurance and i will be eternally thankful to that organization for doing us such a huge favor. We don’t know how long that will last but for now we are covered. Our local council unfortunately won’t take us on as volunteers, they struggle to understand the need for a good volunteer program, only time will tell if that will change.
Finding the space to host the sessions (not your residence) – Once you’ve registered yourself as a CodeClub, CoderDojo or both and have obtained “Public Liability Insurance” you are now good to get on with the next step i.e. find a space where you can conduct your weekly sessions. Whatever you do make sure you run your club within a public setting, DO NOT….DO NOT run your club from someone’s residence. There are many reasons why you should not be running a club with other kids/parents coming over to your house, probably not worth going into within the article. Libraries do offer space at a nominal fee to local residents, or you could even talk to community organizations within your suburb that own their own premises. Another option would be to find a local Makerspace and see if they were interested to team up and take you on as a volunteer. This would enable you to run the Code Club while they provided insurance cover, space to run the weekly sessions.
Partnering with other like minded organizations – I’ve briefly touched upon this topic earlier. The easier route (which i highly recommend) is to find a Makerspace, library or community organization which has a volunteer program and is keen to let you run a volunteer Code Club. Every organization will have its own rules, regulations, organizational setup resulting in a different type of written agreement. Whatever you do, make sure you get things down in writing, formalize the relationship with the partner organization, commit to what you are going to do, confirm what the partner organization is going to provide and what you are willing to bring to the table i.e. your time/effort, your knowledge, your leadership skills, etc.
If you are unable to find a partner organization then you have no option but to do down the route of finding someone who can sponsor your insurance including providing sponsorship for the space you need to run your sessions. You might ask why not take $$ from the parents who’s kids are attending the sessions. Simple speaking, both Code Club and CoderDojo are volunteer run organizations who’s charter clearly states that parents/kids attending the club should not be charged anything.
Setting up a digital presence – In this day and age having a digital presence is critical to getting your word out there. Setting up a digital property is not very hard, find a platform that you like working on e.g. Github, WordPress, etc. and build a simple website that will let you get the word out there. You will need to website to host updates, document rules/regulations for your club, document requirements for potential volunteers, provide links to training material, link to the various tutorials that the kids will use in class, etc. So setting up a digital presence is really critical but it doesn’t have to be a top notch website. It has to be a functional website that’s easy for kids, parents to navigate. That’s all that matters.
I would however recommend going a bit further. We host our own club website i.e. https://coderdojoaltonanorth while all the tutorials we use in class is hosted at https://kidzcancode.com and https://learning.kidzcancode.com. We also use EventBrite to promote the group, i would have recommended Meetup but the recurring monthly costs just don’t make sense for a volunteer group. EventBrite, potentially combined with a FaceBook page, Twitter handle, instagram handle might provide for a stronger web presence.
Spreading the word – So by now you have sorted out “Public Liability Insurance”, you’ve obtained a space to run your classes and you’ve setup a digital property along with some social media presence. Great stuff!!!!. Spreading the word isn’t very hard, it requires some effort but isn’t rocket science. Head over to the Code Club and CoderDojo website, download the promotional material from their website, get hold of someone who has some design expertise and customize those promotional materials for your club. It could take sometime to get the designs right but once you are satisfied with the design of the material, get a few dozen or so of them printed out and drive around to the libraries, pinning them to the bulletin board. Another place to pin up these promotional materials is the local super market bulletin board.
From personal experience, the promotional material we posted across the local council libraries brougn in most of our kids/parents. Word also gets around over time, but nothing like doing the rounds every month and making sure that each of the council libraries are hosting your material on their bulletin boards. I included a link to a website (the digital property I had setup for the club) where i hosted a link to the a Google registration form. The registration form wasn’t hi-tech at all, a simple web form with a dozen or so questions. Check out https://altonanorthdojo.com for details.
Recruiting volunteers, training & retaining them – Volunteers are your biggest assets, treat them well. Treat your volunteers with respect, nurture the relationships with your volunteers and they will pay you by giving their everything to the club, keeping the kids and parents happy. It’s not easy i agree, but if you think about the welfare of the volunteers, kids, parents you can’t go wrong. Go in with the right intentions, the right attitude and you’ll get the right outcomes from it.
Here’s in Australia you can get access to a few volunteering websites. I use Seek Volunteer where i hosted my volunteering role, including notices across the council libraries and posts at the various maker forums i was part of here in Melbourne. It took time, but i eventually was able to pull together a team of volunteers, some of who are still with me today. Along the way i have met some amazing human beings, made some lovely friends and enjoyed the company of some really smart but humble people. I make it a point to take the group out for a coffee as often as i can, you don’t have to do it cause it costs $$$. I also try to arrange for a group learning session during the school holiday (when we are on a break), so that we can discuss a STEM education related topic, refresh our knowledge on the subject and share experience, learning.
Recruiting volunteers is tough, it’s tougher to keep them challenged and to make sure that they are engaged. Treat your volunteers well, keep them engaged and they’ll do a great job of keeping your kids, parents challenged in class. All of this will keep you on your toes, but it’s worth the extra effort. Nothing in life was meant to be easy, volunteering is hard work, but its very fulfilling.
Setting up relevant guardrails – Its important to put in place learning resources, guidelines, training that will help ensure the safety of everyone who attends the club. We have created a page at the our website https://altonanorthdojo.com which lists down all the training requirements for our volunteers. Volunteers initially respond to our Seek Ads which comes to me over email, I respond to them over email requesting a copy of their CV. I make it clear to the volunteer what’s expected of them and what we have to offer as a group. Depending on how things go we schedule an interview with the volunteer over the phone where i walk them through what a typical class looks like, the activities we work on in class and what’s expected from each of the volunteers including the learning opportunities that the role presents.
The volunteer then sends through a WWCC (Working With Children’s Check) and takes the Raspberry Pi Foundation’s Child Safe Guarding training which is an online training module sending through a copy of the completion page. All the relevant training modules that the volunteer needs to complete are listed at the CoderDojo Altona North Volunteer page, which makes it easy for everyone to understand what’s required of them on an annual basis. I remind myself and the entire volunteer team to take the Raspberry Pi Child SafeGuarding training on an annual basis. This is a good way to remind ourselves of the opportunity we have to serve the community and the obligation that comes with it to create a safe place for kids/parents to get together to work on STEM challenges.
I would encourage you while setting up your Code Club to create a webpage that clearly lists down what is required from each of the new volunteers, including the training you require them to complete before they can come into class and work with the kids/parents.
Drawing up your Policies & Guidelines – Your Policies & Guidelines can be as light or as heavy as you want it to be. Our Policies & Guidelines at CoderDojo Altona North have evolved over the years based in learning, experience we have gained working with kids, parents and volunteers here at Altona North. Our Policies & Guidelines cover the following dimensions –
- How you will deal with absence from class
- Encouraging good behavior in class
- What tools or hardware kids are allowed to use
- What tools or hardware the kids might not be allowed to use or can only be used under adult supervision
- What ages, age groups are allowed to attend class
- Guidelines around bringing other kids into class who aren’t attending the session
- Policies around bringing adults into class (who are not a parent) and who are not working with the child
- Guidelines around breaking and misuse of class or library equipment
- Guidelines around use of computers and internet in class
- Guidelines around taking pictures of videos in class
- Guidelines around registrations and dealing with new comers
I’ve just provided a few of the dimensions to consider when writing up your Policies & Guidelines. You should think through your priorities and pull together the Policies & Guidelines that are appropriate for your situation and your group. You can access a copy of our Policies & Guidelines at the CoderDojo Altona North website.
Setting up an attendance system – Its good to track attendance at the weekly sessions, for various reasons. Firstly it ensures you have a clear sight of the real numbers coming into class, what the attendance trends look like in the short/long term but also more important it keeps on the straight and narrow. Parents/Kids know that they shouldn’t be taking things lightly and if they are not regular then they could very well loose their spots to others on the waiting list.
We tried many different approaches over the years to tracking attendance. We started with the simple approach i.e. attendance sheet which got circulated during class and everyone enters their name signs off. We then transitioned to a more complicated system developed by one of the volunteers which included RFID tags given out to the kids. The kids would tap the RFID tag on a RFID reader connected to a Raspberry Pi which would then create an entry within a google worksheet. Then COVID hit us and everything went south along with that went the automated system. We are back to a really high tech system to tracking attendance and it involves using GOOGLE FORMS…LOL. I love Google Forms, it just works and anyone can run with it. The form has two questions on it, the first one has radio buttons for each of the kids with options as follows i.e. present, absent, etc. and the second requests you to select the date. One of the volunteers at CoderDojo Altona North is responsible for running with the attendance, submitting the form.
Google Forms also gives the option to download the data captured using an worksheet, graph the data that’s been collected. It’s a simple way to manage attendance, it just works!!!!
What hardware to invest in – This is a tough one, it will vary depending on your skills including the skills of the volunteer team, what partnership you have been able to build i.e. library, NFP, etc. , how deep the pockets are and what type of sessions you have in mind. I would recommend starting off with simple laptops where you have the ability to install software that you need the kids to work on e.g. Arduino IDE, Python development tools, Block programming software, etc. From experience i have realized that you really do not need powerful machines, 5-6 year old laptops will also get the job done.
We are currently using machines provided by the council that are just unusable, the laptops are locked down, the software used to manage the laptops make sure we can’t use them half the time, the laptops abruptly shut down, etc. After living with that setup for a number of years i decided i have had enough of it. So i decided to look at options. I asked around at various maker groups for donations of older machines, including requests from corporates to donate older hardware. I have to say it’s hasn’t been easy. We ended up with 1 donated laptop and 4 other older laptops which i procured from Ebay/Gumtree. I mostly invest in 6-8 year old machines which you can get for <200$. You can be rest assured that the Windows Operating System on those laptops is outdated. Not being able to invest 200-300$ on new Microsoft software we end up installing Ubuntu Linux on all the machines and make sure we load up all the relevant software the kids need in class.
Also, over the years we’ve obtained grants from the council which has allowed us to invest in the following hardware which the kids use in class.
- Arduino boards
- Raspberry Pi Pico boards
- Raspberry Pi’s
- Raspberry Pi Zero / Zero W’s
- Makeblock robots (mBot, mBot Ranger)
- BBC micro:bit boards
- BBC micro:bit robots (DFR, elecfreaks, etc.)
- Kittenbot Meowbits (small microbit sized boards with an LCD which kids used to program games)
- BBC micro:bit electronics kits for kids
- Arduino and Raspberry Pi electronics kits for the more advanced kids
Owning hardware is not a prerequisite to starting a Code Club. When we started out ~5 years ago all we had was our own grit, determination and our own spare time. The kids/parents came into class with their own laptops and we worked through challenges that were available online. Over time i have started to invest some of my own $ into the club but you really don’t have to. I personally don’t mind investing in hardware that the kids can use in class. There’s nothing like being able to put a smile on a kids face, it’s a privilege to be able to do that.
Access to learning resources – One of the biggest challenges we’ve had over the years was access to good quality learning resources. We tried writing our own tutorials but that didn’t go very far. Also the consistency, quality of content wasn’t what i would have liked it to be. Over the years we have put together our learning management system called KidzCanCode, accessible at https://learning.kidzcancode.com. All the learning content that our kids (aged 6-17) use in class is accessible for FREE at KidzCanCode. KidzCanCode is like a content aggregator, i link to learning resources all over the internet from KidzCanCode which makes it very easy when working with the kids in class. The volunteers point the kids to the relevant learning tracks and the kids start working on the relevant tutorials without too much fuss. We don’t have to remember URL’s, i don’t have to carry around sheets of papers with links on them and i don’t have to create special tutorials for each of the kids.
A lot of work has gone into curating the resources linked to at KidzCanCode. At KidzCanCode you will find FREE resources across the following learning platforms.
- Programming with Scratch
- Programming with BBC micro:bit
- Programming in Python
- Kittenbot Meowbit (Microsoft Arcade)
- Learning Python with the Raspberry Pi
- Learning electronics with the Arduino
- Learning electronics programming with the BBC micro:bit
- Robotics with the Arduino
- Robotics with the Raspberry Pi
- Robotics with mBot, mBot Ranger (Makeblock Robotics kits)
- Web development
- 3D modelling
- 3D printing and much more
Head over to our learning management system at KidzCanCode https://learning.kidzcancode.com and access all the FREE learning resources there. We are always open to creating new learning content for other clubs. So if you have a learning track created, you know what tutorials you would like to link to please drop my an email and we’ll be glad to help you out by creating a learning track at KidzCanCode for you.
To make it easy for volunteers and parents at CoderDojo Altona North I have pulled together a STEM Learning Roadmap that attempts to provide insight into how we might navigate through different STEM learning challenges we offer in class. The amount of learning content available out there, combined with the kits, hardware we have in class makes it really difficult for the new volunteer or parent at CoderDojo Altona North. This STEM Learning Roadmap is just that, a loosely defined roadmap that attempts to provide direction and options with regards to the nature of challenges we might consider when working with a parent / child team. I would encourage you to look at the STEM Learning Pathways (you might call the presentation a dogs breakfast…lol) we follow in at CoderDojo Altona North access through the following link at Hack2.Live STEM Learning Roadmap.
Running the class – Our classes at CoderDojo Altona North run from 0900-1100 every Saturday during the school terms. We start our class by putting out all the kits, hardware on the table at the corner of the room. The kids then gather at the centre of the room and we do a Stand-Up (https://www.atlassian.com/agile/scrum/standups) which lasts around 10 minutes. The Stand-up is an opportunity for the kids to talk about what they did last week, what challenges the faced, what assistance they might need and what their focus was going to be for the day. I also use the stand-up as an opportunity to course correct and get the kids working on a suitable learning track. If a child has been working on a particular platform for too long and isn’t challenging themselves then i suggest they consider trying something else out for a chance. For others it could be an opportunity to pause, think about what they have accomplished and what types of challenges might be better suited for them this term. The volunteers move around in class, working with the parents/kids when they need assistance.
At CoderDojo Altona North the kids work with their parents and the volunteer supports the parent/child team when required. Older kids (12 and older) are able to work by themselves and call out for support as an when required. We try to end class with a Show n Tell which is an opportunity for all the kids in class to show off the work they have done during class, any lessons they learned while giving the other kids an opportunity to provide feedback, input, appreciation for the outcomes accomplished. Class wraps up by 1100, the volunteers pack up the equipment and we head off for our weekly volunteer coffee n chat.
Planning your term – At CoderDojo Altona North we try to have a different focus every term. We usually start our term by getting the kids to work on suitable coding, robotics, electronics, web dev, etc. challenges and over time we pivot to the focus area. The focus area changes from term to term. One term we might choose to focus on Arduino robotics, the next could be web development, the third could working in teams to design and build a prototype of a machine, fourth could include working on an electronics projects based on the Raspberry Pi Pico, etc. Each of the parent/child teams are required to identify a project based on the agreed area of focus for that term and work towards completing that project by the end of the term. This gives us the opportunity to showcase projects at the Monash Makerfaire which is held in December every year at the Monash University campus here in Clayton, Melbourne, Australia.
We use the post class volunteer coffee catch-up to discuss challenges kids are having with their projects, areas of focus for the current term including working through any project prototypes before we handout the challenges to the various parent/child teams.
Staying in touch with the parents – It’s really critical to stay in touch with the parents from time to time. I use email to stay in touch with the parents of the kids attending CoderDojo Altona North. Usually they will get a weekly email from me that provides an update on what we are doing this term or calling out an activity that we will be scheduling later in the term including providing updates on the preparation for group events e.g. the annual Monash Makerfaire which is a really big event on our calendar at CoderDojo Altona North.
Wrapping things up – I initially started this piece thinking that i would just list down the dimensions one needs to consider when setting up a new Code Club. However along the way i realized that it would be a lot easier for the reader to understand where i was coming from if they were able to related to me, the situation i was in and the challenges i faced along the way. So i have written this piece, trying to focus on each of the dimensions, documenting the approach i followed for each, the challenges i experienced along the way along with the potential solutions that worked for me. I acknowledge that everyone will have a different experience and not everyone will need to consider all the dimensions listed above and even might need to consider dimensions i have not thought about and not listed.
Setting up and running a Code Club for kids, parents is a great opportunity for you to give back to your community. Especially in today’s world where its so easy for us, our kids to consume all the time. To be able to teach the kids that they can be creators and not just consumers of the tech is humbling indeed. You have a great opportunity ahead of you, seize it while you can, you won’t regret it…….
Reach out to me at trevor at hack2 dot live if you have any questions, comments, input or feedback.