This gap can make both teaching and learning far more difficult than necessary. The leap from one to the other can often leave children and teachers feeling intimidated, convinced once again that computing is only for the more ‘tech-savvy’, but what is the solution?
Out of the frying pan and into the fire
"Scratch is a good starting point for both students and teachers."
Imagine taking a child to a swimming pool, putting them in armbands and introducing them to the shallow end. Then shortly after, you take them out, remove their armbands and throw them in at the deep end. You wouldn’t dream of it. Then why should we expect students to jump straight from using simplistic programs such as Scratch, to learning programming languages such as Python? As with my swimming pool analogy, it’s completely taking out a vital component of the learning process. Comparing this pattern to other subjects, Scratch to Python is like Ladybird Books to Shakespeare, or Painting By Numbers to Monet.
Such a huge leap is not an effective progression, and can actually consolidate the fears surrounding the difficulty of computing, as opposed to alleviating them. This could lead to an even worse situation than we found ourselves in before the computing curriculum was introduced; as while students will leave school with exposure to programming, if they haven’t enjoyed the experience, they’re unlikely to pursue it beyond compulsory education. If we are to have any chance of tackling the IT skills shortage currently looming over the tech industry, we need to entice students into such career paths, by making sure they see computing as a viable vocation. In the first instance, this means making it accessible and easy to understand for students throughout their education.
The current situation at a glance
Starting with Scratch makes sense for both teachers and students. As a visual platform, it’s easy on the eye and much simpler to pick up than text-based programing languages. This is especially important given that the majority of primary school teachers lack prior programming experience. Scratch is therefore a good starting point for both students and teachers, as rather than developing the codes themselves, pupils can use pre-existing pieces of data to explore the concept of commands and scripts. With a range of available projects, combining animation and sound, Scratch is a fun, but somewhat basic introduction to computing.
"As a new language, BASIC provided a great alternative for those who wanted to learn programming."
Fast forward to secondary school however, and Scratch is quickly disregarded, as many students are tasked with getting to grips with complex languages, such as Python and Java. The issue with this is that these languages are far more advanced, mathematical and of course, text based, which is in stark contrast to the visual learning platform offered by Scratch.
While I see Scratch and Python as essential teaching tools, there is without doubt something missing; that crucial middle step to ensure that the transition from one to the other is as seamless as possible.
For every problem, there’s a solution…
From the late 1970s to the early 1980s, the 8-BIT microprocessor was deemed revolutionary, the precursor to most of today’s technology. Now, it’s regarded by many as prehistoric, as we find ourselves in the age of 64-BIT and multicore processors. Yet before we relegate the 8-BIT micro to the realms of history, let’s not forget the iconic feature that set it apart; BASIC.
With BASIC’s common-sense commands and a forgiving structure, those using it can easily input, manipulate and output data to create content. As a new language, it provided a great alternative for those who wanted to learn programming, but who trembled at the thought of the binary code once favoured by mathematicians. In terms of level and difficulty, BASIC is more advanced than Scratch, but a step below the more complex languages like Python, making it the perfect middle ground for secondary school teachers and students who are still trying to build their confidence with programming.
To refer back to my earlier analogy, throwing teachers and students into the deep end will only perpetuate fears about the difficulty of computing. At the same time, however, it’s no use treading water, and we still need to give students the opportunity to challenge themselves and to become talented and confident programmers. For that reason, as far as education is concerned at least, it’s time we went back to BASIC. After all, sometimes to move forward, we need to look back.
Do you have experience with BASIC? Share your experiences below.