Skip to main content

Welcome, the Hub connects all projects

Integrating STEM+C

All Topics for this Forum

Topic: "Computational Thinking in Elementary School"

Topic Posts

Topic started by: Katie Rich on 2/11/16

As we work as a field to bring CS to all, one of the core issues we will address is determining how to best address computational thinking in elementary school. What does computational thinking look like for a Kindergartner? For a fifth grader? When should computational thinking involve a computer, and when are unplugged activities more suitable?

Discussion forums have been archived, posting is no longer available.

This topic has 31 posts, showing: 1-20
1   2   Next

Are we making computational thinking visible, or invisible?

posted by: Katie Rich on 2/11/2016 5:01 pm

We often discuss integration of computational thinking (CT) into other subjects as a solution to the zero-sum game of curricular changes in elementary school. If we're going to add something, we have to take away something else -- unless we are able to integrate the new material into something existing.

I've been considering whether this strategy means that, in the end, CT will become invisible within the curriculum. Will the strategy of using computers to solve problems become just one of many possible strategies available in math class, and will discussing the impact of computers just be another topic in social studies? Or do we think that CT (or CS) will indeed become a new, separate subject, and integration means that because we can teach other subjects through CS, the time spent on those subjects can be reduced to make room for CS as a separate subject?

I've been thinking about integration as the former. I saw the end game as making CT an invisible force adding power to studies of other subjects and eventually not called out on its own. I believed this to be particularly true in elementary school, where lines between subjects are becoming less defined anyway.

What do others think about this?

Visible or invisible

posted by: Roxana Hadad on 2/13/2016 5:01 pm

I agree that CT should be a "force adding power to studies of other subjects" and not be its own separate subject, but I don't think it should be invisible. I think we have to make students aware of the CT skills they are using as they are employing them to (1) empower them in understanding what skills they have acquired/are working on, so that they can identify as someone with CT skills and (2) give them the metacognitive skills to understand what they are doing and why, so hopefully they can transfer those CT skills to other areas.

"I am someone with CT skills"

posted by: Katie Rich on 2/15/2016 10:41 am

I absolutely agree with you that we need to make CT visible enough for students to develop an identity as someone with CT skills. As a math educator, one of my biggest goals is to contribute to the development of an environment where no one draws the conclusion, "I am just not a math person." That's something I hear a lot from both students and adults. I think one of the goals of bringing CS to all is to make sure that "I am just not a CS person" doesn't become just as common a refrain.

Computational thinking

posted by: Amy Cohen on 2/16/2016 10:45 am

Coding and computational thinking are not independent of the good mathematical practices in the Common Core Math Standards. Perhaps these subjects require more careful reasoning, more precision of language and syntax, more attention to making sense of what the code or computation is supposed to do and what the output tells you about the motivating problem - more than straight drill and practice with rote procedures. Let's not get carried away with new ideas to buy more machines and more software and more trainers of trainers to the enrichment of the start-up and established businesses.

Example: "10 - 5 -7" means one thing in some contexts and something else in another. Resolving the ambiguity is an essential skill for those who hire folks for real computational and coding jobs. "My dear aunt sally" won't cut it without mathematical thinking.

computational thinking in kindergarten

posted by: Diane Comstock on 2/13/2016 4:56 pm

Having taught kindergarten for some time, though over 15 years ago, I observed students using CT while solving a pattern problem. Students at that age spend a great deal of time identifying patterns and transferring what is observed to another medium. For example, we used aabbcc pattern and clapped to that pattern; then we would create new clapping patterns and set it to an alphabetic pattern. Finally, we would transfer that pattern to hands-on with colored tiles. They were usually successful in being able to re-create a pattern in three ways.

different kind of visibility

posted by: Katie Rich on 2/15/2016 10:46 am

This is a really interesting point! There are certainly a lot of ways that children use computational thinking already. They are just not aware they are doing so. This is a new way to think about making CT visible -- not making it a subject, but simply highlighting the ways kids use it naturally or in other subjects.This is a nice example. What are the best ways to make kids and teachers aware of the CT there?

Computational thinking

posted by: Martha Syed on 2/16/2016 8:18 am

I haven't read the article or topic yet but I like and agree with your answer Mrs. Rich. If we has educators respect what is already in human beings natural growing development, when we are trying to implement something to enhance it, it would be much easier but yet can still push the mindset to think differently. We love to meet you one day or view your classroom interaction with your students. Keep being a very good teacher in Mathematics.

Defining CT for this discussion

posted by: Brian Drayton on 2/16/2016 10:13 am

I am enjoying the exchange here, and I like your approach to this question. As we go forward, can you provide a brief summary of what you mean by CT?

What is CT?

posted by: Katie Rich on 2/17/2016 9:39 am

Thanks, Brian!

I think the question of what CT means, for elementary school students as well as older students, is one of the big things we're trying to figure out.

My personal opinion (at the moment, anyway) is that CT is the set of practices that computer scientists use when attempting to understand a problem and develop a computer-based solution to that problem. This includes ideas such as breaking down a problem into smaller parts that can be addressed separately, stripping away unnecessary information in order to focus on the core constraints of the problem, approaching the development of a solution iteratively, and so on.

One of the advantages of thinking about CT as a sub-component of CS is that the computers themselves need not be involved right away. Kids can think about isolating the important information and discarding the unnecessary information when solving problems on paper, for example. If we're able to help kids become comfortable with this practice early, we can wait until later to point out that this is an important practice in CS -- if that seems advantageous. This is part of what I mean when I talk about "invisible" integration.

Again, all that is open for debate and I'd be interested to hear responses from others. This reflects my current thinking about it.

What is CT? another question

posted by: Brian Drayton on 2/19/2016 5:09 am

Katie, your answer is clear and helpful. I think I'm trying to wrap my head around the cognitive and social operations/experiences/dispositions that would lay the groundwork for this.
At the level you are writing about, I see many parallels with what kids need to learn to do, in undertaking any practical and constructive activity. For example, my wife teaches at a Waldorf School and in third grade (which is where her class is at), one key theme is Shelter. So every 3rd grade learns about building shelters, and usually constructs something useful,either on the school grounds, or elsewhere -- a chicken coop, a utility shed one year a class at this school build an outdoor oven which they and others could then use to bake bread...
This operation involves design, which involves understanding the various component pieces and their functions, and how they are constructed, etc.(and how different people can find parts to be responsible for and execute)...
Such projects (larger and smaller) have been part of "hands on" or "inquiry" pedagogy forever; it seems to me that such activities, from idea through design, division of labor, reckoning quantities, etc etc. can be used at the early grades as examples of how one undertakes a complex process, and provide metaphors or paradigms which can get applied to more and more abstracted building projects -- including learning to code.
Working at this level, one can see how computational thinking-- not necessarily expressed in the language of computer science -- might be infused in ways that have multiple payoffs. The challenge from a CS point of view is to help the teacher keep track of the deep commonalities of process and cognition -- and of course the challenge from almost every other point of view is that such projects don't seem to fit very well with the current mainstream of schooling. But then, I suppose, "computational thinking" doesn't either, or we wouldn't need all these projects and discussions!

What is CT? other considerations

posted by: Irene Lee on 2/19/2016 10:36 am

Hi Brian and Katie,

This is a good discussion. When Brian talks about the task of building shelters he describes thinking such as decomposing a problem into smaller problems and moving from ideas to the design of a solution. This is thinking BUT it it is not computational thinking UNTIL one is considering how to represent and solve the problem in a way that computers can be used (as computational devices as opposed to hammers).

For example, if I want to create a shelter and see if it can withstand hurricane force winds, I might think of running a simulation to test the shelter under different wind speeds. In this simulation I'd need a representation of the shelter and the winds. Considering what is important to represent about the shelter and winds in the simulated world on the computer is computational thinking (abstraction). Other aspects of computational thinking are automation (developing algorithms and processes) and analysis (assessing whether the abstractions made were appropriate).

*Note that computational thinking is not about "coding" per se. Coding is the implementation of the design.

I think it is helpful for teachers to recognize that there are aspects of thinking that are common in problem solving (such as problem decomposition) BUT they also need to realize that computational thinking requires going one step further and considering how the problem will be addressed using a computer as a tool.

RE: What is CT?

posted by: George Reese on 2/22/2016 10:53 am

I knew Irene would join in with this consideration. :) I'm still puzzling about it myself, and Irene has helped me get closer. The wording for CT that I keep going back to is the one that comes from Wing's paper at

"Computational Thinking is the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent [CunySnyderWing10]"

In talking with some computer scientists, I find that it can be a concept rather dear to them, but difficult to pin down. My heuristic so far is to remember the computer when thinking of computational thinking. It's not just problem solving, but a way of thinking that can and should include the "information-processing agent."

I think a particular challenge with where we are now, is to be as clear as possible but not become pedantic with terms that scare teachers away.

Visible to teachers, students, or both?

posted by: Katie Rich on 2/24/2016 1:24 pm


This is a helpful point, and I think it will be useful for the project our teams are working on at UChicago and UIUC to develop learning trajectories for CT in elementary school. I agree that what differentiates CT from other general problem-solving techniques like abstraction and problem decomposition is the fact that CT is directed at using computers as a tool. However, I believe that initial activities that address the general ideas of abstraction and problem decomposition can be considered stops on the road to CT ideas. That is, I think we need to think of "unplugged" activities that relate to the big ideas of CT as the start of learning trajectories for which full understanding of CT ideas are the end points.

I don't think this (necessarily) means that we have to start in with computers right away. It seems to me that our most important work at the youngest grades will be to (1) identify activities in other subjects that use CT-related strategies and (2) even more critically, help teachers understand how these activities will later lead to later, more explicit treatment of CT and CS with students. That is, while I'm still not sure we always need to make the CT "visible" to our youngest learners -- and indeed, perhaps we shouldn't try, if we aren't ready to have them use computers yet -- but we absolutely need to make the CT, present and future, visible to teachers.

The challenge later in elementary school will be deciding when to bring computers in, and to clearly connect the computer-based activities to the prior unplugged activities.

We have our work cut out for us, but I'm excited about this new way to think about this work. Thanks, Irene!

preparing for CT in elementary school

posted by: Irene Lee on 2/25/2016 8:31 am

Hi Katie,

I agree that the thinking skills mentioned (abstraction and problem decomposition) can be taught starting in elementary school. I also agree that CT can be taught without being on a computer (CT is a set of thinking skills, not implementing skills) using activities such as CS Unplugged. BUT not all abstraction and problem decomposition are CT - they is only CT if the thinking is problem is meant to be solved using a computer as a tool rather than a human.

I have a few suggestions:

1) Don't call problem solving techniques "CT" unless the ultimate target is solving the problem using a computer as an information processing device.

2) Start in elementary school introducing what computers are and what they are capable of. This is the information students need to know if they are to develop into computational thinkers. They also need to understand how human and computer capabilities differ so they can understand how to problem solve using a computer as a tool rather than planning on a solution that only a human can carry out.

I hope this helps.

CT and precursors

posted by: Brian Drayton on 2/26/2016 1:45 pm

I have found this exchange helpful. There is something in discussions about CT integration that reminds me of discussions about how to teach the "Nature of Science" (NOS)-- What benefit is there in addressing it explicitly, apart from its use in a specific inquiry?
It seems to me that if we want to encourage people to apply CT-type thinking as a general skill, the "precursors" that Katie describes need to be addressed as habits of mind and method, in a disciplinary context -- but when appropriate, to point out how this approach is exactly what's needed when thinking about computational solutions I guess I'm thinking that "transfer" is more likely from the general to the specific than the other way around (and in fact, I'm not sure "transfer" makes sense in any other scenario).
Anyway, deep and interesting questions.
-- brian

What's in a name?

posted by: Annmargareth Marousky on 3/7/2016 1:36 pm

I have enjoyed this exchange but now have a question ...

I agree that we should not call something CT unless the goal is to solve the problem using the computer as a tool. As a former Elem and STEM teacher, I found that calling everything CT confused my little ones, although I did enjoy the child who explained that since his brain was a fast computer he was always doing CT.

My question then becomes what do we call the thinking skills that we teach in elementary (like abstraction, decomposition, algorithm, ect) that are vital but do not lead to using the computer as a tool, if not CT? Is there a better name?

With my STEM students, we compared CT to the Engineering Design Process,and while by 5th graders were able to distinguish the end difference between the two, my 1st graders could not. Is there a better phrase to help them understand without confusing them (or the teacher)?

In an age of precise language, spiraling education and proof of progression, does a precise name matter? I'm not sure. Thoughts?

- Annmargareth

Deliberately vague?

posted by: Katie Rich on 3/14/2016 1:00 pm


I've struggled with the issue of precision of language for kids through most of my career. When writing math curricular materials, I've generally tried to make sure to use precise language in the materials to equip teachers to use that language, but be clear in stating the levels of precision expected of kids (which are often low). Precision is definitely a part of mathematics, but in elementary school I'm generally of the opinion that too much focus on precise language will lead to inflexible thinking.

With that in mind, your question separates into two parts for me:
What language should we use in curricular materials and suggest that teachers model?
What language should we expect kids to use when describing what they are doing?

My thoughts on this are constantly shifting, but at the moment I'm thinking that just describing the broad ideas simply as problem-solving strategies to students and teachers would be just fine. I do think that PD and teacher-facing materials should make it clear to teachers that these are components of CT, and I don't think there is any harm in mentioning to kids that computer scientists (and others!) use these skills. But using problem-solving strategies as the general language hopefully will prevent elementary students from needing to spend time sorting out what is and isn't CT.

Deliberately clear!

posted by: Paul Goldenberg on 3/16/2016 11:09 am

It looks like I'm destined to be rooting for your camp a lot, Katie!

"Precision is definitely a part of mathematics, but in elementary school [...] too much focus on precise language [can be a problem]."

Yes, yes, yes.

In quoting you, I deliberately vaguified what the problem is -- you said "inflexible thinking" -- but because I think the result of over-attention to vocabulary is, in fact, broader.

Precision in language is a part of mathematics, but not because mathematicians are naturally anal or pedantic word freaks (though anyone might be). Precision is for clarity. Because a room has "four corners" we can't casually refer to the "corners of a cube" because then it is not clear whether we are referring to the four or the eight, so we invent a new term. Do the "sides" of a cube include the top and bottom? Unclear, so we invent a new term. But mathematicians don't obsessively use "numerator" and "denominator" when "top" and "bottom" (or as one mathematician colleague tends to say "upstairs" and "downstairs") are briefer and equally clear (and, btw, more clear to people who forget which is which). And ask a mathematician sometime which is the subtrahend and which the minuend. The chances are you'll get a shrug.

I think the real problem of too much focus on precise language in elementary school is that it distracts from the ideas for which precise language is (sometimes) needed, and furthers the impression that fancy vocabulary is the mathematics. And that may be how it contributes to inflexible thinking. It is, itself, an arbitrary inflexibility -- words used because that's how you're supposed to do it, not because this circumstance actually needs those words for clarity.

The final thought: Clarity is a very big deal. We want it in good creative or technical writing; we want it in public speaking; we want it in a cover letter. Lawyers care a ton about precise wording -- sometimes to assure clarity, sometimes to obscure it, but always to know which they are doing. The precision we need for mathematics isn't identical to those others, but it should probably not be treated as if it is an idiosyncratic feature of an obsessive discipline.

Thanks, again, Katie!

post updated by the author 3/16/2016


posted by: Katie Rich on 3/22/2016 5:29 pm

Welcome to my camp, Paul, and feel free to stay as long as you like. :)

I really like the distinction you make here between clarity and precision and the relative importance and needs for each. (I always mix up subtrahend and minuend, by the way.)

This is just another example of what I sometimes feel is the crux of my work as a mathematics educator: figuring out ways to motivate mathematics for kids. Waiting until the situation establishes a need for specific vocabulary -- when things become unclear without it -- to introduce it, makes good sense to me no matter what the discipline.

dissecting the creature might kill it

posted by: Paul Goldenberg on 3/9/2016 11:52 am

To me, possibly the most important reason to call kids' attention to their own CT is what you, Katie, said in your 2/15/2016 10:41a posting "I am someone with CT skills." The all too common "I am just not a..." is such a plague, both for individuals and for the nation. So, I often cringe at activities that "get kids doing math without even realizing they're doing it." If, in fact, the activity is good mathematics, and a creditable challenge, I want the kids to realize that they did mathematics, succeeded, and enjoyed it.

All that said, I worry a lot, especially for young children, about dissecting what is and isn't mathematics, or CT, or.... For example, young children often apply linguistic structure to make sense of mathematical ideas, when the mathematics is presented orally rather than in writing. For example, I asked (orally!) a kindergarten child who knows what 3 + 3 is to say what she thought "three eighths plus three eighths" and got the nearly immediate answer "six ayfs! What's an ayf?" The same child who proudly says what three hundred plus three hundred is has no idea what to write in response to 300 + 300. Is this mathematical reasoning? Well, um, sort of (it correctly treats a mathematical problem, and even gets a better answer than the fourth grader who treats 3/8 + 3/8 as 6/16) but sort of not (it brilliantly uses a linguistic strategy that applies equally well to 3 goats plus 3 goats, and does not require that the child have any notion what an "ayf" or a hundred are). But I don't really care. And the child doesn't care. And saying it is (or isn't) mathematics would be a distraction.

What I do care about is what you (Katie) wrote at the beginning: here I am in kindergarten and I can do three-hundred plus three-hundred. Math is fun and I can do it!

I feel the same about CT. Letting a kid notice that they've used some valuable way of thinking that mathematicians and/or computer scientists use all the time can help them see themselves as "permitted" to be in those prestigious clubs. I wouldn't overdo it lest it seem that thinking is especially valued only when it's used in those clubs, but those are clubs that society often excludes us from, so I'd keep them aware.

But sensitively distinguishing between CT and MP and other mathematical/logical habits of mind feels like too much dissection to me. And Annmargareth's comment below captured a bit of that: until one has amassed enough knowledge about the world to sort things into different categories, the categories themselves are pretty useless and may even be distracting. The 5th graders got it; the 1st graders didn't. That doesn't necessarily imply any developmental inability to understand; just no need for a category.

It seems very sensible to define CT the way Katie did at the beginning. Paraphrasing deliberately roughly, she said CT is "the ways computer scientists analyze problems and formulate solutions," but note that my paraphrase left out the computer. That is clearly an important element for CS, but without the computer, the same ways of thinking are nearly identical to what mathematicians do, so much so that the shift in context (the particular tool, whether it is mental, logical argument, pencil, or computer) feels irrelevant to me. The logic and structure -- abstraction, decomposition, structured argument -- are the essence. A mathematical proof is a "program" of sorts; certainly a (working) program is a (constructive) proof. More advanced students do need the distinction -- teaching a computer how to recognize a tic-tac-toe win involves recognition that it does not "see" what we see, and so we need to describe with precision what a diagonal is, and what to do about it -- but I'm dubious about the value of telling first or second graders that their correct ways of solving a problem (in any domain) are or are not CT.

post updated by the author 3/16/2016