Metacognition: thinking about thinking

What is this thing of which you speak?

Harry's finger

Humans think about thinking all the time. It’s one of your species’ better habits. For example, Harry the Human might tie a string around his finger, to help him remember the milk. When Harry was tieing the finger, he was thinking,

“When I see the string, I’ll think, ‘Why is there a string around my finger?’ And then I’ll remember.”

That works because human brains are connecty. Harry might not know that his brain is connecty, of course.

Metacognition helps deep learning

Expert programmers metacog all the time. Yes, “metacog” is a word now. For example, Hanna the Human is given a programming task, fetches her patterns, and starts working. When she’s part way through:

“The pattern says I should sort the data here. But that would slow the app down. Hmm. I’ll change the pattern. Move this processing to the server.”

“I’ll change the pattern” is a metacognitive step. Hanna is monitoring her progress on the task. She predicts that if she keeps going the way she is, then she’ll run into a roadblock. So she changes how she thinks about the problem.

Metacogging is another difference betwixt experts and novices. Experts do it more. You can see the advantage for Hanna. She doesn’t waste time figuring out how to sort the data.

The Cyco Way makes metacognition explicit, that is, makes students aware that thinking about thinking is part of problem solving. You saw an example of that when we were talking about patterns:

Embedding patterns

One pattern is embedded inside another. That’s common in programming. Hanna learned it from experience. We can help students by making it explicit.

Metacognition and time allocation

One way humans use metacognition is to allocate their time. For instance, Sammy the Student has a midterm exam coming up in a Web tech course. He knows he’ll be tested on definitions of terms, like HTTP, Apache, and PHP. Sammy goes through his book, and underlines things we wants to remember. Then he flips back to the front of the chapter, and scans the underlined text. He sees the definition of PHP, and thinks,

“Oh, yeah, I remember that.”

The same for the other terms. Since he didn’t have any trouble with the terms, he stops studying.

Sammy bombs the test.

Why? It has to do with his brain’s connectiness. When Sammy went through the book the first time, he underlined “PHP is a server-side programming language.” When he went through the book the second time, he came to that underlined sentence and recognized it. Then he made a metacognitive error: “I recognise that sentence, so I know it. I don’t need to study it again.”

Two things are going on. First, recognition is easier than recall. That’s why multiple choice questions are often easier than fill-in-the-blank. With a multiple choice question, the answer is in front of you. You just have to recognize it. With a fill-in-the-blank, you have to recall. The cues are less direct, especially when the wording of the question is not exactly the same as what Sammy read.

Second, when the brain activates a node, it stays active for a while. Activation is not all-on or all-off, like a light switch. It’s more like a sunset. It fades over time. Sammy reviewed the key terms immediately after he had read them for the first time. The concepts were still somewhat active, and relatively easy to recall.

By the time Sammy took the test a few days later, the activation had faded completely. Even worse, he had a question like this:

“You are to write a smartphone app that customers will use to check their account balances and transaction histories. The data is kept in a data center in Detroit. What technologies would you use?”

Argh! None of the terms Sammy memorized are in the question, not directly. The instructor expects Sammy to know that there are servers in data centers, that the servers would run data services for the app, and you could write the services in PHP. Given the way he studied, Sammy doesn’t make those connections.


Sammy overestimated his readiness for the exam. This is a metacognitive error. It’s Sammy’s knowledge of his knowledge. If he had a better estimate, he might have allocated his study time differently.

One way to help Sammy improve his estimates is to give faux exams, or fauxams. They’re tests before the real tests. They’re also called practice exams, but “fauxam” is cooler.

Fauxams help students estimate their knowledge. They can then make better time allocation decisions.

An interesting fact about learning is the testing effect. Testing improves student performance, just by itself. For example, profs can give students a test on the first day of class, before they’ve learned anything. The students will bomb the test, of course. However, chances are they’ll do better in the class overall, compared to students who weren’t tested on the first day. Weird, huh?

Don’t panic! Don’t panic!

In the Cyco Way, metacognition is also about emotions. Here’s an example from CoreDogs (, a precursor to Cyco, created from 2007 – 2009. CoreDogs is about Web tech. The following is from a lesson on CSS. You don’t need to know what CSS is, just that it has many pieces.


Renata (1) and CC (2) are pseudents (pseudo-students – virtual students who go through a Cycourse with the real students). Kieran (3) is a pinstructor.

Renata is “feeling overwhelmed,” an emotional reaction to the Cycourse. Emotions can affect students’ time allocation decisions, and the effectiveness of their study time. Perhaps Renata will conclude that she doesn’t have what it takes for the Cycourse. It’s like the mythical “math gene”; you’re either good at math, or you’re not. In fact, anyone of average intelligence can learn basic college math, and basic Web tech, if they put in the effort. However, students who believe the myth avoid math courses, or don’t put in much effort. They don’t have the gene, so what’s the point?

CC (2) says that she’s feeling the same thing. Students sometimes think that they struggle alone. That usually isn’t the case.

The pinstructor acknowledges the problem. He treats it as legitimate issue. Then he gives a pattern (4). It’s a collection of CSS settings that Kieran starts with. He customizes it from there.

The CoreDogs author knew from experience that some students get stuck when faced with all of the options in CSS. The interaction betwixt Renata, CC, and Kieran suggests that this is a common problem, that emotional reactions are legitimate and can be talked about, and that there are solutions.

Pseudents are particularly useful in helping with metacognitive issues. The Cyco software has features for defining pseudents, and using them when writing content.

“Emotions should have no place in university courses”

Your species is inherently emotional. You evolved that way. None of you has any choice but to be emotional. You are especially sensitive to social information, like “Alan says you’re lazy.” Someone saying that to you triggers emotional reactions, unless you’re mindfully aware of your reactions. Or pathological. Either way.

There are emotions in just about everything humans do. When two or more of you do something together, there are definitely emotions involved.

It doesn’t matter whether emotions should have no place in university courses. They always will. A good Cycourse will talk about emotions that the course typically engenders in students. Like the TMI thing above.


Metacognition is thinking about thinking and learning. Metacognitive beliefs can affect learning. For example, the belief “I just don’t have the math gene” reduces a student’s interest in learning math.

Cycourses can address metacognitive issues. For example, vignettes with pseudents can show that emotional responses to learning problems are to be expected, and that they can be discussed.


Add new comment

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
Prove that you are sentient.
6 + 10 =

Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.