COMPUTATIONAL THINKING

COMPUTATIONAL THINKING
UNPLUGGED
CT CONCEPTS
Sequences
Loop
Parallelism
Events
Conditionals
Operators
Data
- A particular activity or task is expressed as a series of individual steps or instructions that can be executed by the computer.
- Like a recipe, a sequence of programming instructions specifies the behavior or action that should be produced.
PLUGGED
CT FACETS
Decomposition
Abstraction
Algorithms
Debugging
Iteration
Generalization
- Break down the complex problems into smaller, simpler and more manageable part problems.
- Then, focusing on solving each part of problem.
CT PRACTICE
- Focusing on the information that is relevant and important.
- It involves separating core information from extraneous details.
- Pulling out the important details
- Identifying principles that apply to other problems/situations
- A sequence of steps for solving a problem
- A plan, a set of step-by-step instructions to solve a problem.
- If you can tie shoelaces, make a cup of tea, get dressed or prepare a meal then you already know how to follow an algorithm.
- The routine process of identifying and fixing the error.
- Detecting, moving and fixing "bugs" in algorithms and processes to make them behave as expected.
- Repeat design processes to refine solutions, until the ideal result is achieved.
- Also referred to as pattern recognition.
- Taking a solution (or part of a solution) to a problem and generalise it so it can be applied to other similar problems and tasks.
- Loops are a mechanism for running the same sequence multiple times.
- The sequences of instructions happening at the same time.
- One thing causing another thing to happen
- An essential component of interactive media.
- The ability to make decisions based on certain conditions, which supports the expression of multiple outcomes.
- Provide support for mathematical, logical, and string expressions
- Enabling the programmer to perform numeric and string manipulations.
- Data involves storing, retrieving, and updating values.
- Keeping score in a game is a frequent motivator for young designers to explore variables.
Incremental and Iterative
Abstracting and Modularizing.
Reusing and Remixing
Testing and Debugging
Designing a project is a sequential process of first identifying a concept for a project, then developing a plan for the design, and then implementing the design in code.
It is an adaptive process, one in which the plan might change in response to approaching a solution in small steps.
it is critical for designers to develop strategies for dealing with – and anticipating (foresee) problems.
Network technologies provide access to a wide range of other people’s work, allows designers to build on other people’s work
Helping young designers to find ideas and code to build upon, enabling them to potentially create things much more complex than they could have created on their own.
Building something large by putting together collections of smaller parts, is an important practice for all design and problem solving.
Employ modularization and abstraction by separating out the different behaviors or actions of the ‘object’ that is navigating the obstacles
6