Improve Your Learning and Problem Solving Skills with Chunking
When learning something new, we want to create chunks. With chunking, we learn a concept then combine that concept with other concepts to solve problems. If we encounter a concept that is too big to understand, we need to break it into smaller chunks, then recombine the chunks.
This article originally published in my newsletter, The Solution
Learning by Chunking
How do you eat an elephant?
You first become a vegan.
Then you donate to the WWF.
Lastly, you get online and start a flamewar with anyone who uses this archaic idiom.
You can find me on Twitter @jarednielsen.
See what I did there?
If you want to master a new skill or solve a mammoth problem, break it into bite-, or byte-, sized pieces. These pieces are chunks. According to Barbara Oakley in A Mind for Numbers:
One of the first steps toward gaining expertise in math and science is to create conceptual chunks — mental leaps that unite separate bits of information through meaning.
Oakley outlines three steps for learning by chunking:
You can’t truly learn something if you are distracted, trying to learn too many things at once, or trying to eat an elephant. Continually break the problem down until the pieces are digestible and proceed one-at-a-time.
Where have we seen this or something like it before?
We divide & conquer!
Or should we say, we chunk & conquer?
This is also a common pattern in algorithm design. Divide & conquer recursively breaks a problem down into smaller and smaller pieces. These smaller pieces are then recombined into a solution to the problem.
What’s the pattern?
What are the chunks you need to know to implement a divide and conquer algorithm?
- Basic maths (division and inequality)
- Conditional statements and operators
We could break it down even further.
- Data types
- Array methods
- Control flow
These are a few of the programming fundamentals, or chunks, in our library that enable us to create more complex chunks, such as recursion. Even more fundamental is Proof by Induction
Chunks are useless if you don’t know what they mean.
Ask yourself, “How does this chunk work? Why does this chunk work?”
In understanding our chunks, we begin to build a library. According to Oakley:
In building a chunked library, you are training your brain to recognize not only a specific problem, but different types and classes of problems so that you can automatically know how to quickly solve whatever you encounter. You’ll start to see patterns that simplify problem solving for you and will soon find that different solution techniques are lurking at the edge of your memory.
Lastly, put the pieces back together. How does what you are chunking fit into the big picture?
How does it relate to other chunks?
Chunking may involve your learning how to use a certain problem-solving technique. Context means learning when to use that technique instead of some other technique.
How to Use Chunking for Learning and Problem Solving
When learning something new, we want to create chunks. Chunks are separate bits of information united through meaning. With chunking, we learn a concept then combine that concept with other concepts to solve problems. If we encounter a concept that is too big to understand, we need to break it into smaller chunks, then recombine the chunks.
How do we do do that?
According to Oakley, “practice helps build strong neural patterns — that is, conceptual chunks of understanding.”
Want to level up your problem solving skills? I write a weekly newsletter about programming, problem solving and lifelong learning.
It’s The Solution.