"Computational thinking (CT) is a problem-solving process in which people formulate problems or instructions so that a computer [or human] can solve or implement them" (ISTE, CSTA, 2016).
Computational thinking (CT) is a fundamental part of computer science (CS) but can (and should) be applied across all content areas and everyday life. In fact, it is called by some a New Literacy of the 21st Century.
In this unit, you will discover how you can use the aspect of computer science and computational thinking to support students' literacy, critical thinking, thinking, creativity, collaboration, and problem-solving.
Introducing computational thinking to a young student may sound intimidating at first. But when you decompose (break down) this problem into the four components, you will find it relatively easy and helpful across the curriculum.
So let's dive in:
Use this visual to help you think about the four aspects of computational thinking: Abstraction, Decomposition, Pattern Recognition, and Algorithms:
- How can you turn real-life photography into a drawing? The problem may seem daunting, but when you remove the unnecessary details and think about what is the basic, the minimum that makes pizza a pizza (abstraction), you can break your drawing down (decompose) to the basic shapes. Now you can draw it!
- How to make pizza? Can you build a simple step-by-step recipe (algorithm) so we can shop for the ingredients? Can you provide the essential steps explaining the preparation process and make it easy for beginner chefs to follow?
- What ingredients are on that pizza? I spot olives and pepperoni. If I slice the pizza and give you just two slices, will you be able to tell me what is on the third one? If the answer is yes, you probably recognized a pattern.
With that in mind, watch the following short videos in which Linda Liukas, an author of the children's book series Hello Ruby explains in student-friendly language what computational thinking is and how you can connect computer science to the real world.
Computational thinking can be applied to all grade levels.
Watch how this teacher uses humor to introduce students to algorithms (procedures for solving a problem) and debugging (finding and fixing mistakes)
Watch how this teacher uses humor to introduce students to algorithms (procedures for solving a problem) and debugging (finding and fixing mistakes)
Here are some other ideas:
- Explore digital story creation with a simple (and free) web-based programming tool called Scratch
- Create timelines and complete sequencing activities (can be with technology or 'unplugged')
- In music, reading, or writing - explore pattern recognition with rhythm, structure, and rhyme - try creating new forms
- In social studies - have students generate step-by-step directions to complement the creation of community maps
- In art, Student A describes an image or object hidden from Student B, while Student B follows instructions to draw or re-create that object.
- Students practice exact instructions and step-by-step algorithms in a classroom while designing instructions for watering the classroom flowers, logging into the classroom computer, and morning (or any) class routine.
ISTE standards for Educators connection:
- Standard 2.1 - Learner: Educators continually improve their practice by learning from and with others and exploring proven and promising practices that leverage technology to enhance student learning.
- 2.1c - Educators stay current with research that supports improved student learning outcomes, including findings from the learning sciences.
- Standard 2.6 - Facilitator: Educators facilitate learning with technology to support student achievement of the ISTE Standards for Students.
- Standard 2.6c - Educators create learning opportunities that challenge students to use a design process and computational thinking to innovate and solve problems.
ISTE Standards for Students connection:
- Standard 1.5 - Computational Thinker: Students develop and employ strategies for understanding and solving problems in ways that leverage the power of technological methods to develop and test solutions.
- 1.5a - Students formulate problem definitions suited for technology-assisted methods such as data analysis, abstract models, and algorithmic thinking in exploring and finding solutions.
- 1.5b - Students collect data or identify relevant data sets, use digital tools to analyze them, and represent data in various ways to facilitate problem-solving and decision-making.
- 1.5c - Students break problems into component parts, extract key information, and develop descriptive models to understand complex systems or facilitate problem-solving.
- 1.5d - Students understand how automation works and use algorithmic thinking to develop a sequence of steps to create and test automated solutions.
--------------------------------
Want to Learn More? Here are some EXTRA resources you might find interesting:
Free Training Courses for Teachers
- Code.org (Workshops, courses, digital 'dance parties, and the famous 'Hour of Code)
- 'Computational Thinking for Educators' (Google's free CT training for teachers)
- Scratch Ed - a free online course/intro to Scratch (provided by Harvard University)
- UNI's partnership effort with the IA Department of Education (offers a free course in "programming with Scratch")
Here are a couple more home examples of fun with the Exact Instructions
- Making a PB&J sandwich https://www.youtube.com/watch?v=FN2RM-CHkuI
- Brushing your teeth, making toast: https://youtu.be/CT8Z1LlooCM?t=238
Watch a brief video introduction to computational thinking as a New Literacy of the 21st century:
Browse resources from Osmo: Teaching Computational Thinking to Kids
Computational Thinking Skills: Image Source: Osmo: Teaching Computational Thinking to Kids
Resources curated by Dr. Sarah Bryans-Bongey and Magdalena Galloway.