Imagine a learning environment designed to prepare our children, from their first introduction to school, to be inventors, designers and creative thinkers using all the tools at their disposal, including computers. How do we create such an environment? What ideas, models and tools would promote this type of learning? For students, but also for the teachers, administrators and parents who support their learning journeys?
As discussed previously by Conrad Wolfram[1], computational thinking (CT) provides a framework to create this kind of learning opportunity. All the more so when learners are exposed to CT starting at an early age and through the lens of other domains of knowledge versus just through the “machinery of computers”. It can serve as a transdisciplinary tool that provides learners with skills to solve complex problems and deepen their understanding in whatever subject area they are already learning. It can also contribute to positive attitudes toward computing, which are critical to keeping students, especially girls and youth of color, open to ongoing experimentation with computer science ideas.
So, what is computational thinking?
Computational thinking includes concepts and practices that computer scientists use. While there is not one definition which everyone agrees, upon, Dr. Aman Yadav, our co-author, and colleagues suggested that the essence of computational thinking involves four practices:
1. breaking down complex problems into more familiar and manageable sub-problems
2. using a sequence of steps to solve problems
3. reviewing how the solution transfers to similar problems, and
4. determining if a computer can help us more efficiently solve those problems.
In other words, it is a series of problem decomposition —-> algorithms —-> abstraction —-> automation.
How does it relate to coding and computer science?
This question is important given that so much of how we think about computers in schools currently revolves around computer science (CS). While computer science is more than programming, to date most K-12 classrooms have relied on coding as the foundation of their computer science curriculum. Students typically learn coding as a standalone activity from one-off experiences (such as, Hour of Code) to more formalized long-term learning experiences (such as, STEAM or CS coursework).
These experiences are one way for students to engage in computational thinking, but we can also engage students in computational thinking ideas within the context of other K-12 subject areas, such as literacy, social studies, science, and mathematics. At the K-12 level, coding is toward the end of the continuum that allows students to apply CT skills using a computer. On the other end, computational thinking can become an encompassing approach to solving problems that draws upon computer science practices (problem decomposition, abstraction, debugging, etc.), but goes beyond having students learn to code. In fact, many opportunities to introduce CT skills using an unplugged approach exist. Emerging research led by Dr. Yadav in his CT4EDU project found that when teachers in Oakland County, MI, connected unplugged computational thinking ideas to their mathematics and science practices they were more engaged and had a greater tendency to integrate CT in K-12 classrooms, which ultimately influences student outcomes.
The important point is that one can be a computational thinker without coding and one could also be a coder without being a computational thinker. It is a progression that starts with CT as a way of thinking and learning across subjects – but through the lens of a computer – and ends with students having the option to apply CT skills specifically within a programming environment.
What can we do?
We are working with organizations, schools and researchers across New York City and nationally to explore what integrating computational thinking across the elementary school might look like. Ultimately, our goal is to identify the models with the greatest potential, and then scale these to transform learning for thousands of students. We ask our fellow education innovators across the ecosystem to join us in this learning journey, to help build the research base, and to inform and inspire others to replicate the promising practices we uncover.
_________________________________________________________
[1] Wolfram, C. (2018). Why Computational Thinking Should be a Core Educational Subject. Wise ed.review. https://www.wise-qatar.org/why-computational-thinking-should-be-core-educational-subject-conrad-wolfram
[2] Israel, M. (2015). Supporting all learners in school-wide computational thinking: A cross-case qualitative analysis. Computers & Education 82, 263-279; National Center for Women in IT (NCWIT), “By the Numbers” (2017), https://www.ncwit.org/sites/default/files/resources/btn_03232017_web.pdf; National Action Council for Minorities in Engineering (NACME), http://www.nacme.org/underrepresented-minorities. [3] Yadav, A., Hong, H., & Stephenson, C. (2016). Computational thinking for all: Pedagogical approaches to embedding a 21stcentury problem solving in K-12 classrooms. TechTrends 60, 565-568. DOI: 10.1007/s11528-016-0087-7.