The past few years have seen coding, or programming, gain in importance in children’s education, not least following its introduction in the national curriculum. Schools have started to teach it and clubs and courses around the country have slowly cropped up to help. So why another outfit to teach coding?
I have written in an earlier blog post about how CodeToday came about — my personal motivation was to do something I thoroughly enjoy and CodeToday combines two of these: programming and teaching. My other motivation is my desire, like many others, to see coding become a mainstream skill as I believe that that’s the only way for our children to be equipped to shape the future, rather than just be a part of it. The ability to code, today and in the near future, could arguably be considered to be equivalent to literacy and numeracy. But then, why is the teaching of programming not taken as seriously, in some parts of our education system, as the teaching of literacy and numeracy or indeed most other subjects studied at school? [I have written more about this here.]
Coding is often seen as a game, something to have fun with instead of playing a board game or a video game. This is not the children’s fault but the way it is portrayed by many who teach it. Now, I’m to first to say that I have lots of fun whenever I code — I thoroughly enjoy it. And I certainly want children to have fun too when they code. This doesn’t mean however that coding shouldn’t be taught seriously.
CodeToday aims to teach coding with a difference: we think coding is an important subject that should be taught properly. Here is our philosophy:
We do not teach coding using the “monkey see, monkey do” style as many other courses do. It is very easy to ask students to copy the lines of code written by the instructor and get an app written in an afternoon, only for those students to go home not knowing how to write anything else other than the specific app they copied in the course. Learning to code is about learning to think like a programmer, to understand the tools you have at your disposal, and to understand when to use which tool. One can follow a well written recipe step-by-step and come up with a great dish to eat for dinner, but that doesn’t make them a chef who can conjure up dishes at will. We want our students to leave our courses confident that they can tackle their own projects and ideas.
I teach all CodeToday courses myself, with my 15+ years of coding experience as a scientist and my teaching experience at various levels in which I have always excelled (and been nominated for and awarded prizes for) at explaining complex concepts in a thorough but very accessible manner. It is great to have programmers who want to give up some of their time to run volunteer-led clubs, or computer science students who want to earn some extra cash by teaching children, but would we be happy if Maths was taught to our children in that fashion? Coding courses, possibly more than for other subjects, require a very clear delivery in addition to exceptional content — we need to help our students think in a different manner, in the logical, systematic manner that is key in order to allow us programmers to communicate with the computer in front of us. Here is a lovely note from a 9-year old in one of our most recent courses during Half Term showing her appreciation:
We teach programming — proper programming, without gimmicks. We are lucky to have many resources available nowadays to help with introducing children to coding, from Scratch to the MicroBit and Raspberry Pi and moving robots, but it is all too easy to get distracted by all the fancy stuff that can mask the real coding skills required to tackle any task. Engagement is great, and much needed, but it is not sufficient to teach coding. We do not provide courses to write apps or webpages, we just teach programming, without distractions. Once you can program, you can then use it to write apps, or games, or webpages but also to do much more. I come from a science background having used programming as a key part in my scientific research for many years. In our courses we write games of course, we all like games (you can see an example of a game written by students in our latest half term course using bare bones programming, no gimmicks, below) but we also introduce how programming can be used to understand data — today’s society, and more so in the future, is driven by data that we collect continuously from a myriad of sources and understanding this data, through coding, is a must-have skill for tomorrow’s jobs and businesses.
We keep our courses small (typically 4-6 students) to ensure every student gets a high level of attention. For this reason it is possible for us to offer on-demand courses in addition to our scheduled one. If you have a group of 4 or more friends or classmates, or indeed a mixed group of adults and children, then we can organise a bespoke course where format, dates and times can be chosen to suit the group.
When choosing which coding course or club to send their children to, parents need to make a key decision: Do they want to keep them occupied for some time while they have some fun playing with coding-related activities, or do they want them to actually learn how to code (we still have lots of fun in our courses, mind you) so that they can go home and keep having fun while writing more and more computer programs well after the course is over?