What is a big idea?
Patterns are ways of doing things that humans find useful. By why are they useful? If you can use a general pattern in several ways, how do you choose the best way? If there isn’t a suitable pattern for your task, and you need to change one to fit, what is a good change, and what is a bad one?
The concept of a “big idea” helps here. A big idea is a central concept that motivates patterns. They are the axioms of patterns, in a way. Here are big ideas from different fields:
- Chemistry: The atomic model
- Writing: Write for your audience
- Programming: Make your code easy to understand
- Music: The scale
- Finance: Time value of money
- Economics: The demand curve
You might notice that there are two different types of things in the list. The atomic model is, well, a model, a description of how something works. It isn’t prescriptive. The scale is a model as well. So is the demand curve.
“Make your code easier to understand” is prescriptive.” It’s a heuristic, not a model. However, it’s easily inferred from a model of the economics of IT: People write code. People are relatively expensive. Therefore, make your code easier to understand.
Maybe the Cyco Way should have a separate things called “model.” In programming, one would be the conventional machine, or maybe a simulation of a computer running PHP.
Another choice is to merge big ideas and patterns into one category. However, some people find it useful to keep them separate. Patterns are things you use. Big ideas are motivations.
By the way, remember that the concepts “patterns,” “big ideas” and “models” have no definitive psychological reality. They’re useful abstractions, that’s all. They help students understand, and authors describe.
You may have come across big ideas in Understanding by Design (UbD). There are parallels betwixt UbD and the Cyco Way. There are differences, too, of course, given their different goals. Still, they both promote a thoughtful approach to designing student experiences, informed by learning research.
Using big ideas
Big ideas help students make sense of patterns. For example, the big idea “make code easy for people to understand” explains why programmers should:
- Use meaningful variable names
- Indent code
- Add comments to explain how something works
- Break large code blocks into functions
Recall the brains connect concepts, and that activation spreads. The four patterns just listed all connect to a motivating big idea. If someone says to a student “Remember to indent your code,” that can activate the big idea, which in turn can activate the other three items on the list. The more connected concepts are, the better.
But wait, there’s more! A programming student, let’s call her Greer, is searching for something on the Web, and comes across PHPDoc. It’s a set of patterns for adding comments to PHP code, and software for extracting those comments to create documentation. Greer will know why that’s useful. So, big ideas help connect new patterns to existing ones.
But wait, there’s even more! Greer can create new patterns. Maybe she combines existing patterns to create something more specific that offers better guidance for a particular type of programming. Big ideas help guide her pattern creation.
But wait, there’s even more even more! Big ideas help Greer understand the entire field of programming. The big idea “make code easy for people to understand” implies something about programming that people often miss: programming is a psychological act.
We’re talking about how brains do skilly things, and how they learn how to do skilly things. Our focus is deep learning. It’s about problem solving, not just the concepts of math, writing, programming, or whatever. You know about:
- Neurons and connections. That’s the mechanism underlying everything.
- Patterns, that help people do tasks, and transfer skills from one context to another.
- Big ideas that help students understand patterns, create new patterns, and understand their field.
The next topic in the things-that-brains-do series is metacognition.