Every problem contains information. The trick is working out which information actually matters.
Abstraction means focusing on the important information needed to understand or solve a problem, while leaving out details that are not relevant.
Or, more simply:
Keep what matters. Ignore what doesn't.
Basically, the computational-thinking version of "get to the point".
Imagine someone asks you:
How do I get to your classroom?
You could say:
Walk through the main entrance, turn left at reception, walk to the end of the corridor and the classroom is the second door on your right.
Useful.
Or you could say:
Walk through the main entrance. You will see that there's a large pot plant that I think desperately needs water. Turn left at reception, where Kayla sometimes wears a lovely green cardigan. Continue past three windows. I saw a cute pigeon outside the second window one yesterday...
Not quite as useful.
The pot plant, cardigan and pigeon may all be perfectly accurate details.
They just don't help solve the problem.
That's abstraction.
Because apparently the dachshunds have now become permanent members of the computational thinking department.
Mika is a dachshund.
At least, we're fairly certain she is. Let's investigate.
Here's everything we currently know about our suspect:
Mika has...
a very long body
suspiciously short legs
a long snout
floppy ears
brown fur
a pink collar
a squeaky chicken called Kevin
a favourite blanket that nobody else is permitted to use
an ongoing feud with the vacuum cleaner
selective hearing when someone says "come here"
remarkably good hearing when someone opens the fridge
a tendency to bark at objects approximately 47 times her size
a firm belief that all unattended biltong pieces legally belong to her
That's a lot of information about Mika.
Some of it is useful.
Some of it is... Mika.
Our problem is:
To answer that question, we don't need Mika's complete biography.
We can focus on characteristics such as:
Long body
Short legs
Long snout
Floppy ears
And we can safely ignore:
Pink collar
Favourite blanket
Squeaky chicken called Kevin
Ongoing vacuum-cleaner rivalry
Selective hearing
Suspicious fridge awareness
Biltong-related criminal activity
Kevin the squeaky chicken may be very important to Mika, but Kevin doesn't help us determine whether Mika is a dachshund.
And that's the point of abstraction.
We identify the information that matters for the problem we're trying to solve and temporarily ignore the information that doesn't.
The important word here is temporarily. If our problem changes to "Who stole the biltong?", we may suddenly want Mika's full file back.
Quite a lot.
When programmers solve problems, they often work with large amounts of information. Trying to consider every possible detail at the same time would make problems unnecessarily complicated.
Abstraction helps us focus on the information that is relevant to the problem and create simpler representations of complex things.
Think about the map of Groenkloof Campus (The University of Pretoria).
It doesn't show every tree, chair, window, person, flower and dachshund currently walking around.
It shows the information you need to navigate the campus.
The real world is complicated. The map keeps what matters.
The same principle is useful in computational thinking and coding.
Young children use abstraction more often than we might realise.
We can encourage it whenever we ask them to decide:
What information do we need?
What information can we ignore?
Rather than teaching the word abstraction, we can give children opportunities to practise separating relevant information from distracting information.
Children might initially notice everything in the picture.
But to solve the problem, they need to focus on:
Where is the robot?
Where is the house?
Which spaces can the robot move through?
Are there any obstacles?
The colour of the trees or the number of dachshunds probably doesn't matter.
Abstraction helps children filter the information in front of them and focus on what they need to solve the problem.
Mika would like it officially recorded that the biltong allegations remain unproven.