#Computing #Algorithms #Thinking #ProblemSolving #

Computational Thinking
Photo by Marta Wave from Pexels

What is Computational Thinking (CT) ?

Before we can write the computer program that can help solve a problem, first, we have to develop a more conceptual approach that describes how we might solve the problem.

Then we can implement that conceptual approach using a programming language and submit that to the computer.

Now the computer can run the program and give us some output that could help solve our problem, though realistically, many times we might have to address problems with the program we wrote, or maybe there’s problems with our conceptual approach.

So we might iterate through this process a few times. But you can see there is some initial thinking that we have to do before we can start writing the computer program.

So while we’re seeing a lot of activity and resources that are focused on the computer programming step, there isn’t always as much attention and resources dedicated to helping people think about. Well, the thinking that comes before we write the actual computer program.

As we discuss the thinking that we do before and as we start writing a computer program, we can use the term computational thinking.

Steps of CT

  1. Problem identification

It’s the process of clarifying and converting initial information into a problem statement that can be solved, taking into account some hypotheses, constraints, and feasability.

  1. Decomposition

It’s the process of breaking up the big problems into smaller sub-problems that are easier to solve.

  1. Pattern Recognition

It’s about identifying familiar characteristics in our sub-problems that we can use to solve them

  1. Abstraction

It’s about filtering some noise or ignoring some aspects of the problem that are non-essential or can distract us from the necessary parts of the problem we are solving

  1. Algorithms

When solving a problem, it is important to create a plan for your solution. Algorithms are a strategy that can be used to determine the step-by-step instructions on how to solve the problem. Algorithms can be written in plain language, with flowcharts, or pseudocode.

Why is CT important

Computation thinking helps build skills that all levels of learner need, including “confidence in dealing with complexity, persistence in working with difficult problems, tolerance of ambiguity, the ability to deal with open-ended problems, and the ability to communicate and work with others to achieve a common goal or solution.

Computational thinking (CT) at its core is a problem-solving process that can be used by everyone, in a variety of content areas and everyday contexts.

Computational thinking is an approach in which you break down problems into distinct parts, look for similarities, identify the relevant information and opportunities for simplification, and create a plan for a solution. This broad problem-solving technique includes five elements: problem identificaition, decomposition, pattern recognition, abstraction and algorithms.

Courses

Here is some good online courses that will help you master CT: