Abstraction is a thinking skill used to solve problems: it means identifying the important information you actually need, and ignoring the unnecessary details that would only get in the way. Architects, mapmakers, app designers, and programmers all use it every single day โ and so can you.
Abstraction is one of the four core skills of computational thinking (alongside Decomposition, Pattern Recognition, and Algorithms). It has two parts working together: identifying the important information needed for a goal, and ignoring the details that don't matter for that same goal.
Think about a simple stick figure drawing: ๐ง It doesn't show hair color, clothing brand, or exact height โ just a head, body, arms, and legs. That small amount of information is already enough for anyone to recognise "this is a person." Everything else was left out on purpose, because it wasn't necessary. That act of choosing what to keep and what to drop is abstraction in action.
Every time you build an abstraction, you are really doing two things at once.
Ask yourself: "What do I actually need to know to reach my goal?" Keep only the information that directly helps.
Example: A weather app icon only needs to show temperature and rain chance โ that's what helps you decide what to wear.
Ask yourself: "What can I safely leave out without losing what matters?" Remove anything that adds clutter but no value.
Example: That same weather icon doesn't need to show the exact wind direction in every neighbourhood โ you don't need that to decide on a jacket.
Tap each card to flip it and see how abstraction is hiding in things you use every day.
This is the trickiest and most important idea: "important information" is not fixed โ it changes depending on WHY you are building the abstraction. Same object, different goal, different essential details. Try it below with one simple object: a book.
Goal: Sort each piece of information below into "Essential" or "Not Needed" for making a school Student ID Card. Tap an item, then tap the bin it belongs in.
In 1933, engineer Harry Beck redesigned the London Underground map using abstraction. Toggle between the two views below to see the difference.
Programmers use abstraction on purpose, to make complicated systems easy for people to use.
Driving a car, you press the gas pedal without knowing exactly how fuel combustion moves the pistons. The car abstracts away the engine's complexity so you can focus on driving.
Tapping "Pay" in an app hides an enormous amount of work โ verifying your card, contacting the bank, checking for fraud โ behind one simple button.
In programming, a function is a named block of instructions, like calculateTotal(). You can use it without knowing exactly how the math works inside โ you only need to know what goes in and what comes out.
Tap a term on the left, then tap its matching definition on the right.
Goal: Sort each attribute into "Essential" or "Not Needed" for a game character's battle stat card. Notice how the same skill applies to a totally different situation.
Answer 7 questions to check your understanding of abstraction.
Harry Beck's 1933 abstract subway map design is still the basic style used by transit maps worldwide today.
Emoji designers must abstract complex emotions and objects into tiny icons only about 32ร32 pixels.
Google Maps automatically changes its level of abstraction as you zoom โ country borders when zoomed out, street names when zoomed in.
Doctors record only medically relevant symptoms in a chart โ not irrelevant details like what you had for breakfast three years ago.
A game's "minimap" abstracts an entire vast world into a small corner icon showing only what matters right now โ enemies, objectives, paths.