What is Computational Thinking?

What is Computational Thinking?

Computational Thinking is the problem-solving skill and strategy involved in writing or remedy/debug software programs and applications. More than an approach to coding computational thinking is a process of abstract thinking used in developing computational programs which involves problem identification, pattern identification, information filtrations, and solution development. The solution usually comes out in a form of an algorithm.

Computational thinking isn’t coding. But a good coder is equipped with the best computational thinking. It is a mindset and this mindset can be implemented in problem-solving, business building, and other aspects of life to of problems and we know it.  Whenever a child develops computational skills they articulate a problem and think logically. This helps them identify and explore the cause, effect and analyze how their actions will impact the situation and similar situations today and in the future.

The 4 key skills in computational thinking and way to develop them into kids are discussed below:
Decomposition

Decomposition is breaking down the bigger problems into smaller chunks. It allows students to break down the problem into units and figure out all of the alternative solutions.

The way to teach decomposition is by teaching them the process in small tasks they carry out every day. It’s important to show that series of steps are involved in everyday tasks like brushing their teeth or getting ready for school. Later the students can be asked to build something by giving them the supplies and showing the final product like building a house using Legos.

Pattern Recognition

Pattern recognition is looking for patterns in the puzzles on our hands. This helps determine if we have identified the problems in the past if we already have the solution to them.

This helps to figure out how similar problems have been solved in the past. This can be taught to children through different processes like washing a t-shirt, pants, and socks. These are different 3 tasks but have a similar process and mastering one task with dictated steps can help to easily complete other tasks. Other ways to recognize patterns are using music, dance steps, the periodic table, and colored blocks.

Pattern Abstraction

Pattern abstraction helps children identify important factors for solving problems and filter unwanted information. Filtering the pieces makes it easier to focus on the actual problem and developing solutions based on that. Students can learn pattern abstraction by building a house with Legos and including extra and irrelevant pieces such as spheres, wheels, and other items to help them grasp which parts are significant and which aren’t.

Algorithm Design

Many problems are of repetitive nature. The problems come in many forms but with a similar pattern. Adding 2 and 3 gives a different result than adding 6 and 7 but the process is the same. The algorithm is not the solution to each problem but a set of rules or steps to find solutions to tons of similar problems.

Simply put algorithms are Simple steps or rules which will ultimately lead to a solution.

The way to practice and understand the importance of algorithms is by asking more than one child to write steps to boil tea and after they are done with it, they are to exchange their algorithms and match them with each other. This way it is clear how small steps crucial like lightning up the gas can be missed. This illustrates how detailed steps to computers are to be provided and how we overlook certain steps if we don’t practice computational thinking.

And before we end these let’s see which 21st skills which computational thinking contributes to

  1. Confidence in dealing with complexity
  2. Persistence with difficult problems
  3. Ability to deal with open end problems
  4. Critical thinking, problem solving and communication.

    In the next section, we will discuss how courses at Digi School contribute to building 21st-century skills using computational thinking.