One of the core principles we have always believed in at codetoday is that coding should be taught to children as a serious, academic subject and not as a lightweight activity just to keep the kids occupied.
This is why we have a very detailed and extensive curriculum upon which all our courses are based. Our curriculum starts from the basic fundamentals and extends all the way through intermediate and advanced topics. Students and their parents can decide how far they want to go on their coding learning journey, and we can help them all along the way, no matter how far they wish to go.
We have also designed our courses so that students can progress through the codetoday levels at their own pace by dividing our teaching into short courses that give parents and students great flexibility on whether to do several courses back-to-back or whether to space them out more.
In this post, we will look in more depth at the codetoday curriculum, what's in it and how it is structured, and at the way we teach our curriculum through our courses, both private courses and our very popular Live Online Python coding for kids courses that run all year round.
The codetoday curriculum is divided into several Key Stages, each with clear topics and learning objectives. Here is an example of one of these stages, in this case, Stage 1 which is where every student starts from:
Unlike curricula for other subjects, coding is somewhat unique in the sense that the stages are not necessarily linked to age as with subjects such as Maths or English, say. The reason for this is that at present, students of all ages who start learning to code using a full language such as Python need to start from the fundamentals.
This means that all of our courses, at all age groups, start from Level 1. However, we progress at a different pace at each age group, moving at a gentle pace with our 7-9-year-olds, a bit faster with the 10-12 groups, and at an even brisker pace for the 'grown-ups' in the 13-16-year-old group. At each age group, we then slow down to the right pace once we reach the stage of our curriculum which requires us to spend more time to fully understand the topics.
You can have a look at the fundamentals and intermediate stages of our curriculum by downloading a copy from our curriculum web page.
We start in the early key stages with the fundamental building blocks upon which all of coding relies: loops, storing data using variables, decision making, and creating functions. Our approach is to introduce all of these key topics early on, initially in their simplest forms. This allows us to work on interesting and engaging projects right from the start.
As we progress through the stages, we aim to achieve two key things:
— consolidate the knowledge from the earlier key stages, and
— add new topics at the right pace, and in the best order
We will revisit all the topics from the earlier stages and add more complexity to them, and go further in-depth at understanding how to use them.
A common mistake that beginners, especially children, and teenagers, often do is to pick a topic they have come across, let's say for loops, and say that they know the topic. What they often mean is that they have seen it used in its most basic forms.
Indeed, coding is one of those subjects in which, the more you know, the more you realise how little you knew until a short while before!
We are very proud of our early stages of the curriculum in which we have focused on presenting topics that can be abstract in a way that is both thorough and very accessible to students of all ages. But we are just as proud of the later stages of our curriculum too in which we venture into more advanced topics and more advanced uses of coding. A lot of our later work focuses on introducing students to topics in coding that are used in applications such as science, finance, data analysis and similar real-world applications.
This also fits nicely with our curriculum for courses for adults where we specialise in training professionals in fields such as finance, science, and maths into using coding within their professions.
Progression Through the Live Online Courses
Our students learn coding with us in one of two ways. Either they join a private course with a group of friends, or they enroll on our Live Online Coding in Python Courses.
In this section, we'll have a look at how the Live Online scheduled courses work.
We have designed our Live Online courses specifically for remote delivery. Teaching remotely is significantly different from teaching face-to-face and we wanted a format that makes the most of this. Each Live Online course consists of live, interactive sessions delivered to a group by one of our in-house instructors. But each course also includes additional material that students can access on demand through our online learning platform. This content includes summary videos, notes, quizzes, and other resources.
And that's not all. All our students also get access to The Codetoday Community—this is a private forum exclusive for our students in which students get postcode that they are working on independently and ask us questions. Our team of instructors will then guide and assist them. And other students can also participate in the discussion. This forum is our main way of supporting our students outside of the live sessions, and students can use this forum during as well as after the courses ends. All of this is included in the price of the course, so there are no extra costs involved.
Live Online courses come in different levels and for different age groups. Each age group (7-9, 10-12, and 13-16-year-olds) starts from Level 1, and then once students complete a Level 1 course they move on to the Level 2 course at the same age group and so on. But the Level 1 courses at the different age groups are not the same, and the difference is more at later levels. This is because the age groups progress at different speeds.
Children grow, of course, so we also have a handy guide on our website on how to cross-over from one age group to the next to make sure there are no gaps in knowledge.
Let me give you an example. The figure below shows how the first few Levels of the Live Online courses match with the Stages in the codetoday curriculum which we talked about above. You can see that whereas the 7-9-year-olds spend more time on Stages 1 and 2 of the curriculum, say, the 13-16-year-olds go through these stages at a much quicker pace, and then they settle in a slower pace at higher stages.
Another important feature in our Live Online courses is that each individual course is relatively short. Every Live Online course has four live sessions, each one hour long. This has several advantages:
There is no long term commitment needed from clients. We choose not to require parents to sign up for a whole term, or longer. Parents can enroll their children on a 4-hour course and then come on higher-level courses after that, as many do.
Parents and students can progress at the pace they choose. Some decide to do several levels back-to-back, while others prefer to space them out a bit and use the time in between the courses to practise more coding (and make use of The Codetoday Community to get support from us!)
It provides more flexibility for parents and students to fit coding courses along with other things in busy schedules.
Progression Through Private Courses
Another popular format for our courses is the private course format in which a group of friends learns together. These are typically weekly sessions that run throughout the whole term and often carry on from one term to the next. In such groups, we can be more bespoke in choosing the pace at which we progress through the codetoday curriculum. Our instructors, along with codetoday's Director of Studies, plan each course for each group and monitor the group's progression very closely.