Computational Thinking (CT) is in the midst of its awkward teenage years. It is no longer the cute infant idea that brought together leaders in the field of computer science (CS). Instead, it is criticized for not being sure of what it is and maligned by comparisons to its older sibling (CS). At the same time, it has found a sympathetic friend group in educators who are influencing the direction of its development, a direction that its parents (computer scientists) do not appear to understand. Oh, the drama! Thankfully, it has not been involved in an accident that killed off CS. Imagine the guilt.
This Is Us
Computer scientists are right to criticize the lack of accuracy in definitions of CT. The ordered execution of codified language and basic CS design conventions, including models of computation, central to understanding algorithms and abstraction are often left out of CT definitions (Denning, 2017; Guzdial, 2018) but are essential parts of CS as a discipline (Denning, et al., 1989; Aho, 2011); consequently, a poor understanding of algorithms and abstraction would lead to poor CS understanding. From the point of view of computer scientists, any definition of CT that lacks mention of computation is merely describing problem-solving which garners no particular interest in CS.
Different Strokes
Coincidentally, educators love CT as a metacognitive problem-solving framework and as a potential pathway to CS, both widely considered to be classroom needs. Possible reasons that CT has been introduced to some educators with CS-specific content omitted are that CS itself can be inaccessible to both teachers and young students and that CT might be more sensibly applied in non-STEM contexts without CS concepts.
Family Ties
CT critics must realize that if they contend that CT stripped of CS is simply problem-solving, logic then dictates that problem-solving must be a core part of CT. Were it not, then CT stripped of CS would simply be nothing. In other words,
problem-solving + CS = CT
must be true. What happens when problem-solving is removed from CT? You have the ability to do CS things without the good metacognitive skills to do them well, i.e. coding but without computational thinking, a possibility which researchers have recently uncovered (Straw, Bamford, & Styles, 2017).
Growing Pains
If that additive relationship between problem-solving, CS, and CT is indeed true, then there are a handful of helpful implications. Apply to CT what Jeannette Wing stated in 2008 and again in 2017 about the need for progression of computer science concepts for students of all ages, and problem-solving may very well be the result when parts of CT are abstracted away for developmental and contextual reasons. Moreover, if young students can be taught better problem-solving skills as an early part of the progression of CT understanding, then that should increase their ability for CT when they start learning the CS part of the CT equation later.
Freaks…
Educators and their understanding of student development at different grade levels will be essential to determine the progress of CT understanding, from completely non-computational models to the strongly CS version of CT, and all the intermediate steps in between. Educators will then need to be cognizant that some CS education is necessary to understand how to assess whether and when students are ready for CS concepts that enhance CT and how those CS concepts can be used to support cross curricular goals. An estimated guess would peg educators at the fourth(?) grade level as those who will need to prepare themselves to learn basic CS concepts, like conditionals and flow-of-control structures, to support the potential inclusion of CS along with problem-solving as part of the CT progression.
…and Geeks
Computer scientists should be aware that debating the specifics of CT content knowledge, while important, is no longer sufficient for progressing CT understanding. Rather, any CT component under debate must be placed at the correct level of CT progression based on CT pedagogical content knowledge–likely obtained from educators–resulting in varying, but successive definitions of CT. Problem solving, or its associated skills, is one such component that may be central to CT in the early part of the CT progression, but diminish in importance as more complex components are added in the latter parts of the progression. The midpoint of CT progression could be represented by the CT described by Weintrop, et al. (2016), which would include systems thinking and data practices. And at the highest point of the CT progression? That will be a debate for computer scientists.
Happy Days
CT critics can no longer ignore that CT accessibility at different levels of cognitive development may be the reason behind simplistic, vague, or incomplete definitions of CT. Continued progress in CT understanding will have to be a collaborative effort between computer scientists and educators who consider the added dimension of CT progression. These additional complexities are indicative of the level of maturity that CT has reached since 2006, making progress more difficult but achievable.
Teenagers!
References
Leave a comment