Seven Chunks of Wonder
Overview
In this article I will map a few results of cognitive science to typical phases of growth as a software engineer.
While I will mention the main scientific papers, I am not a scientist and we could think of this article as a metaphor built on those results to build an evocative idea, rather than a scientific theory.
The Magical Number Seven, Plus or Minus Two
This finding by Miller is so famous that it has its own wikipedia page! The way I interpret it - one can only hold so many concepts in their head at one time; in fact, around seven concepts.
Further results by Baddeley and Hitch connect this limit with language. Because to think of a concept, we must name it (and verbalizing or rehearsing the names actually helps with recall), they found that the limit could maybe not be seven concepts, but rather two seconds worth of syllables describing those concepts. To quote from this this paper:
To cut the arguments of Baddeley et al. short: constant is nothing but the duration of about 2 sec, not the number of any “chunks” or any better identifiable units such as words or syllables. If measured in terms of the number of items (syllables, words), the span of immediate memory depends on the articulation rate, i.e. the number of syllables or words that a person can articulate within about 2 sec.
Chunking
However, what are these concepts that one is remembering around seven of? They could be anything. Miller called them “chunks”, and the process by which we create them, chunking. in this post I want to talk about chunks which are conceptual abstractions. But it is worth mentioning some of the classic ways in which we take advantage of chunking in our everyday life.
Phone numbers
While recalling a mobile phone number such as 9849523450, we might break this into 98 495 234 50. Thus, instead of remembering 10 separate digits that is beyond the “seven plus-or-minus two” memory span, we are remembering four groups of numbers.
Chess
Moreover, to further support the chunking theory, this chunking ability only works with actual boards which could happen in a real chess games. When presented with randomized boards, chess masters are not able to recall them any better than someone who doesn’t play chess at all.
For a detailed paper on the matter, Recall of Briefly Presented Chess Positions and Its Relation to Chess Skill is a good reference.
“Two Pizza” team size
“We try to create teams that are no larger than can be fed by two pizzas,” said Bezos. “We call that the two-pizza team rule.”
Otherwise we start treating people as cells in a spreadsheet, or points in a four quadrant box, and nothing good ever comes out of that1.
To-do lists
Because we forget things after about seven items, to-do list apps, spreadsheets or ticketing systems are commonly used to prevent forgetting things.
Chunking and Abstractions
In software engineering we are constantly dealing with abstractions. Interestingly, from linguistics:
chunking is sometimes known as “levels of abstraction”, because the higher up the Hierarchy of Ideas you go, the more abstract the concepts you are dealing with
So now we come to the main point of this post: by the acquisition of experience and skill, we grow as software engineers by gaining the ability to reason about systems at increasingly larger levels of abstraction, therefore being able to work effectively with more pieces of the system at once in our mind.
As a junior engineer one works with small code units. A block of code in a function (perhaps around seven lines of code). One unit test.
Later we can think about entire services.
Later still about whole systems.
Even later about the machinery of organizational structure and incentives that cause those systems to be created.
By the recognition of these layers of abstraction, we can exert our influence at the right level depending on the outcomes that we seek.
Thanks to the increased chunking, we are able to reason about an increasingly larger scope.
References
- Recall of Briefly Presented Chess Positions and Its Relation to Chess Skill
- The Magical Number Seven, Plus or Minus Two
- Chunking (psychology)
- Understanding And Using The Milton Model 1: The Hierarchy Of Ideas (‘Chunking’)
- The magical number seven in language and cognition: empirical evidence and prospects of future research
- Baddeley’s model of working memory
-
I realize that the scientific evidence around chunking is about working memory, or recall of information which has not been committed to long term memory. Hopefully any manager has committed their team to long term memory and I am making sort of a stretch, based on personal experience, that the magical number seven also makes sense when thinking or making decisions about well known information. ↩︎