In our digitally connected world, it can be argued that coding and especially computational thinking have become essential parts of a new ‘computing literacy’ to support traditional literacy.
These computational thinking skills can be developed by building apps and through courses, for example, Discovery Education’s coding service. However, let’s look at how the ‘four pillars of computational thinking’ can be developed offline.
These ‘pillars’ are defined as decomposition – breaking down a complex problem into smaller, more manageable parts; pattern recognition – looking for similarities among and within problems; abstraction – focusing on the important information only, ignoring irrelevant detail; and algorithms – developing a step-by-step solution or the rules to follow to solve a problem.
For decomposition, children can explore some of the ‘fermi problems’ – these are problems that initially sound difficult to answer, but a reasonable solution can be reached if they are broken down into a series of related questions which the answers to can be estimated. The process was invented by, and named for, Italian physicist Enrico Fermi.
A famous example is: ‘how many piano tuners are there in Chicago?’ To solve this query, we could guess there are about 5 million people living in Chicago. We know that pianos are usually owned by families rather than by individuals, so, assuming that each family in Chicago has four people, we can surmise that there are around 1.25 million families in the Windy City.
If we presume one in every ten families owns a piano that is tuned regularly, then there are around 125,000 pianos in Chicago. So, how many piano tuners do we need to tune these pianos? Estimating that each piano should be tuned once per year, there are 125,000 piano tunings in Chicago annually.
If each piano tuner works 40 hours a week, and if each piano takes roughly two hours to tune, then a piano tuner can tune around four pianos per day for 250 days per year. That comes to 1,000 piano tunings per piano tuner each year.
Thus, we can calculate that we need around 125 piano tuners to perform the 125,000 piano tunings in Chicago each year. Though we don’t know if this answer is 100 per cent accurate, we do know that it is a fair estimate.
Some child-friendly examples include ‘how many grains of rice are there in a 1kg bag?’ and ‘how old would you be if you lived for one million seconds?’
Pattern recognition can be supported with ‘image sorts’, where children are asked to spot patterns in a collection of pictures, sort them into different categories, share these sets, before trying to work out each other’s categories. Simple games like ‘Top Trumps’, ‘Happy Families’ or any number of playing card games, can further develop this skill.
Abstraction lends itself easily to games of ‘Pictionary’. In order to be successful, they have to focus on the essential details of the word or phrase and include these in their drawings. Random word generators will allow them to generate lists of words to use at different levels of difficulty.
An algorithm is simply a set of steps that need to be followed to solve a problem and can be represented using lists, numbered diagrams, flow charts or storyboards. Algorithms can be developed by asking children to present the steps needed for someone else to re-create a model (e.g. Lego) using diagrams or flow charts. Alternatively, they can try creating storyboards for their favourite story.
All of these skills relate back to coding and app development. Discovery Education Coding is structured to enable creativity. Children can design, build and share authentic apps, by following structured steps to acquire new skills, which they then apply to create their own apps.
Take coding from concept to reality with Discovery Education Coding this European Code week. Learn more here.
Andrew Tidswell is Director of Professional Development at Discovery Education