My boyfriend and I discovered Codecademy over Christmas 2013 – neither of can remember how we first found out about, but we started off competing against each other to see who could get the furthest in Python. When I started teaching coding to years 3 and 4 in January 2014 and started to run my Code Club with Year 5 and 6 I thought it would be a good idea to show the children what they could learn to do – at that point in time I’d just managed to code a PygLatin generator in the Python tutorials (rather upsetting for me, this has now been changed and made easier so that it no longer has a clause for changing the code if there is a vowel at the start of the word). Anyway, I rather proudly showed the children my lines of code and explained that their eventual goal would be to write code like that.
After two terms of Code Club, I have three boys who are entering Year 6 in September who are now over 30% through learning Python and determined to get ahead of me (they quite possible already have now!). More surprisingly, I have a young lady from the same class, who joined Code Club in Term 2 and isn’t a particularly enthusiastic computer user, however, she has now made it her goal in life to work through Codecademy, no matter what the cost – for me this is one of the biggest achievements of the group as she is an average achiever with confidence issues – she’s doing something now that barely anyone in school can do so she doesn’t feel like she’s competing with anyone or going to fare badly compared to other people so she can be independent, make mistakes and it doesn’t matter. She mentioned trying to work through some of the problems at home and asking her parents and older brother for help only for them all to exclaim that it was too difficult for them – this made her day!!
I’ll start with a brief warning – this website is NOT made for children, it is aimed at adults like me who want to expand their knowledge and so sometimes the wording of the text can be really tricky for the children to understand. Please do not expect this to be easy to follow – I’m still confused and find things tough and I’m only up to 33% – my partner gave up around the 75% mark, but only after I helped him with the early on logic stages (he just couldn’t get the hang of not, and, or!).
Since I first signed up, Codecademy has gone through a bit of a facelift – it’s all shiny and posh. The children usually sign up with their school Gmail accounts – fortunately it doesn’t seem to require any email activation so we can use their school accounts without any emails bouncing back!
They also seem to allow you to learn a huge selection of programming languages.
But for now, let’s just start with Python – you’ll notice that it says on the picture above that I’m only on 30% – this is a rather frustrating and bizarre issue with the site. Since I first started, the Python programme has been revamped meaning that, as mentioned above, in some sections, such as PygLatin, the code has been simplified – I’ve done the more complex code so that means I’ve managed to complete more than 100% for some sections, but I’m still only about 30% through the new course.
This issue nearly caused two boys to fall out one week because, for no apparent reason, one child was 1% ahead of the other even though they were on the same page – it turned out he started working through the course a week earlier and in the meantime it had been updated.
Anyway, let’s take a look at lesson two of Python to give you an idea of the layout:
On the left of the screen is some information, your instructions and then a hint box. The main body of the page allows you to enter your code and the black box in the top right is the action box where any printed code will appear (for example if you do some maths in Python, the answer will appear in the black box – this will also be where any error messages will appear if your code is incorrect). The big blue button at the bottom will go green if you’ve solved the problem.
The instructions start off fairly simple – you just learn what some of the different terms mean, but they quickly get quite complicated:
When the children first started having a go at Codecademy, there were a few times where I thought I’d never be able to help them, but in all honesty, helping the children has really helped my own understanding and I feel quite confident now with debugging the first 30% or so. Now I just need to find the time to push myself further through the course.
As with the Code Club resources, the children began to help each other solve issues – the most common ones were indentation – realising that after certain statements you need a colon and to indent the next line 3 spaces or one tab (turns out this is a common problem with all coding) and forgetting capital letters. Codecademy itself is really pedantic about this even when looking at strings, which are generally user defined rather than part of the code. I honestly couldn’t count how many times we had the following error message:
Still, at least the children were being encouraged to read their error messages (my general policy for a lot of help the children asked for was to say “work it out yourself” – harsh, but necessary).
Since the children who were working through the Code Club Scratch resources were earning certificates I decided to create* a certificate for Codecademy for achieving 20%, but since it got so difficult after that point, I decided to start giving certificates for every 10% after that!
So, Codecademy is a great resource for someone with a desire to learn to code properly. I would actually recommend that any teacher who wants to teach Computing at least have a go at one of the languages, if only to get an idea of the structure and that all important syntax. It is sometimes frustrating, sometimes downright silly and sometimes so difficult it makes you want to cry, but there is a massive sense of achievement when a piece of code does what you want it to and if my 9-10 year olds can have a go then anyone can!
*I say ‘create’, but what I mean is ‘filled in the gaps on a template’ on Pages for the Mac 😉