This session is condensed, and could easily be turned into two sessions.
In this session I teach cognitive load theory. It is not the only learning theory around, but for the scope of this course most learning theories motivate the same conclusions and I find cognitive load theory to be a framework that computer scientists and engineers readily understand.
These lecture notes give only a high-level hand-wavy outline of the topics discussed in this session. It is wise to look at other resources for a better grounding before teaching this session.
Sketch a brain+eye looking at an object (I use a fish).
fishas input, despite the fact that my rough line drawing looks almost nothing like an actual fish
schemata
To understand the importance of schemata, let’s consider memory. Memory can be categorized into three kinds:
oh, right, that was your friend in college, you had five classes together
Because working memory is small and where thinking happens, let’s consider what we put inside it. Our cognitive load can also be categorized into three kinds:
Intrinsic load, that which is needed to do the task at hand.
For example, you can’t add two numbers without storing two numbers in your head
Extraneous load, that which is unrelated to the task at hand.
For example, I’m hungry
, that’s an interesting shirt
, what will I say at the party tonight
, etc.
Germane load, that which is being used to construct and reinforce schemata.
(the use of the word germane
for learning clearly indicates what the people who created these terms thought was important…)
A central premise of Cognitive Load Theory: whatever part of you is not engaged in working or being distracted is learning, meaning automating the thinking you are engaged in at the time.
I stated earlier you can’t add two numbers without holding two numbers
– intrinsic load
But intrinsic load changes.
(write on board without talking: 7 + 3
)
Most of your brains, looking at that, see the idea ten.
You have a schemata that just provides ten
with no conscious thought needed. Intrinsic load: 0 ideas
When you were four years old, you didn’t yet even had strong schemata for numbers: you had to interpret angular-line, crossing-lines, loopy-lines
as seven
plus
and three
, which already overfilled your intrinsic load, making addition out of reach.
(write on board without talking: for(int i;)
)
wrong. But CS1 students don’t (yet). Our goal, as educators, is to build up the schemata in our students brains that make the tasks of computer science small enough they can think about them; in other words, to boost germane load enough that intrinsic load shrinks.
Discussion: what does what we’ve shared so far suggest you should do as TAs?
(as ideas are suggested, tie each one back to topics discussed so far)
(in some order, either as part of the discussion or after it concludes, cover the following)
How can we minimize extraneous load?
Question: is it better to be the entertaining TA or the boring TA?
Goal: interesting, not entertaining or boring (hard to achieve)
Not physiologically complete, but useful definition of stress:
Stress is wasting time thinking about how stressed you are
Tactic: stress is contagious, so appear relaxed yourself
This makes TAing a form of Emotional LaborTactic: Physically acting relaxed (slow, deep breaths; relaxed muscles especially around neck and shoulders) can reduce stress hormones inside the body.
How can we manage intrinsic load?
Divide and conquer is better than incremental solution: split off a partial problem for the student
Remove the context; have them solve the partial problem on its own in its own program so they are not distracted by how it will fit in with everything else
Assure them that they don’t need to think about X right now, it can safely wait until they solve Y first.
How can we detect intrinsic overload?
If task is too large to fit in the head with existing schemata, then effort to try is futile, so some students will disengage and self-distract: browse the web, play games, even just stare blankly. Of course, so will some lazy students who are hoping a TA will do their work for them…
You have schemata your students do not yet have.
Thus you do not think the same way they do.
This can cause expert blind spot
: the teacher cannot see what the students are doing.
To counter this, you have to pay attention to and learn how your students are thinking, and adapt to that.
(I usually erase the board before this topic)
Opening script:
Learning Styleson the board
Leaning styles, the idea that some people are visual learners and some auditory and so on – is there anyone that does not know what I am talking about?«sigh»
I always hope that eventually someone won’t, since what people think they know about learning styles are mostly myths.
Discussion:
Board: ∃ preference
Board: ∀ topic ∃ best style
This suggests the following kind of grade distribution for a visual-best topic (faked data for expository clarity):
visual instruction |
auditory instruction |
mixed instruction |
|
---|---|---|---|
auditory preference | B | B− | A− |
visual preference | B+ | C+ | A |
Thus,
Prepare two or more modalities of instruction
This requires planning; by default, most people think about teaching only in the way that clicked for them when they were learning.
A great place to get other modalities is from other TAs.
Simple strategy: start with the modality you think is best; the moment it appears not to be working, switch to another modality.
Better: integrate modalities.
There is some research that suggests you have some modality-specific working memory for each modality, and that mixing them can free up a bit more mind.
This is why I talk and write and draw on the board: mixed-modality instruction.
(I usually erase the board before this topic)
One of the most powerful teaching tools is analogy. Analogy allows you to take advantage of schemata students already have as a basis point off of which to build the schemata you want them to have.
Board:
_______ is like _________
except _________
Analogies have three parts: the new topic, the old topic, and the limitations of the analogy.
New teachers sometimes forget the except
part, but without it it is not obvious what you need to learn. For example, what have I taught by saying
A linked-list is like an array; it stores values in a user-specified order, lets them be accessed by index, doesn’t skip indices, lets elements be changed, stores a single type of value, is efficient to iterate in order, etc.
The skill of creating analogies is transferable, can be developed, and is key to good instruction (and useful in all social settings). Advice: practice making analogies.
Exercise:
(note: I create analogies live during this exercise, and if they give me something too easy I do it again until I have to come up with something really odd. If you are not up to that kind of performance, preprepared analogies could probably work too, albeit without the this is possible
evidence that live creation gives.)
One model of long-term memory asserts that the more times during a day you are called on to move an idea from short-term memory into working memory, the more likely you are to retain the idea in long-term memory. Thus, summarizing topics is a useful pedagogical practice.
exceptpart