Αρχική » 1 Computational thinking (Σελίδα 2)
Αρχείο κατηγορίας 1 Computational thinking
Barefoot – explore patterns
Join Dr Chips and Ms Zaman as they explore patterns! Patterns are all around us and being able to spot and use them is an important computational thinking skill. This session will share a range of unplugged pattern activities and showcase our ‘Colourful Kits’ interactive
Computational Thinking Skills
Computational Thinking Skills
Full article here DigitalCareers_CTIAWorksheets_CTdefinitions
Source https://digitalcareers.csiro.au
What is computational thinking?
Computers can be used to help us solve problems. However, before a problem can be tackled, the problem itself and the ways in which it could be solved need to be understood.
Computational thinking allows us to do this.
Computational thinking allows us to take a complex problem, understand what the problem is and develop possible solutions. We can then present these solutions in a way that a computer, a human, or both, can understand.
The four cornerstones of computational thinking
There are four key techniques (cornerstones) to computational thinking:
- decomposition – breaking down a complex problem or system into smaller, more manageable parts
- pattern recognition – looking for similarities among and within problems
- abstraction – focusing on the important information only, ignoring irrelevant detail
- algorithms – developing a step-by-step solution to the problem, or the rules to follow to solve the problem
Each cornerstone is as important as the others. They are like legs on a table – if one leg is missing, the table will probably collapse. Correctly applying all four techniques will help when programming a computer.
Source BBC
Barefoot Evaluation
What is evaluation?
Evaluation is about making judgements, where possible in an objective and systematic way. Every day, we make judgements about what to do and what we think, based on a range of factors.
When considering a new digital device for the classroom, there are a number of criteria: operating system, portability, memory size, screen size, ease of use, warranty, etc.
After evaluating the options, laptops might be judged as the digital device most suitable for a classroom.
Why is evaluation important?
Evaluation is about judging the quality, effectiveness and efficiency of products, solutions, processes and systems. We ascertain whether they’re fit for purpose.
One approach could be to consider specific criteria, e.g. a design goal or specification, or user needs. In computer science, evaluation is systematic and rigorous.
Barefoot Abstraction
What is abstraction?
Abstraction is about simplifying things – identifying what’s important without worrying too much about detail.
A school timetable is an abstraction of what happens in a typical week. It shows key information about classes, teachers, rooms and times but ignores further layers of detail such as learning objectives and activities.
A class timetable is an abstraction of the school day for one class.
Much is omitted, to provide a simplified summary.
Why is abstraction important?
Abstraction allows us to think about things to different degrees of detail. It’s a powerful tool in computer science, where it’s used to manage the complexity in much of what’s designed and created.
We can think of abstractions as layers, or boxes within boxes, allowing us to disregard what’s going on inside each of them. Software comprises layers of code, each hiding the complexity of the next. We can see items of hardware as “black boxes”, disregarding their internal workings unless we choose to look deeper.
Barefoot Patterns / Generalisation
What are patterns?
Patterns are everywhere. By identifying patterns, we can create rules and solve more-general problems.
Children notice patterns in how teachers react to their behaviour. Weather patterns feed into our forecasts. In maths, pupils can measure the area of a rectangle drawn on graph paper, by counting the number of unit squares within it, but this could be difficult or longwinded for rectangles which are really small or large. A more elegant solution is to multiply the length of the rectangle by the width – and it works well for all rectangles. Once pupils can remember this formula, it’s so much faster than counting squares.
In computing, the method of looking for a general approach to a class of problems is called generalisation.
Pupils learn mathematical formulae: these are generalisations.
Why are patterns important?
Computer scientists strive to solve problems quickly and efficiently, and they seek methods applicable elsewhere. If they see a pattern across an algorithm, they’ll look to create a single module of repeatable code, sometimes called a function or procedure – many programming languages have shared libraries of common functions. The recognition of patterns in input data plays an essential role in machine learning. This is an important application of computer science which plays a part in systems for, amongst many other things, algorithmic stock-market trading and the recognition of faces and vehicle number plates.
Barefoot Decomposition
What is decomposition?
In computing, decomposition is the process of breaking down a task into smaller, more-manageable parts. It has many advantages. It helps us manage large projects and makes the process of solving a complex problem less daunting and much easier to take on.
With decomposition, a task can be tackled by several people working together as a team, each member contributing their own insights and skills to particular aspects of the project.
Barefoot Algorithms
What are algorithms?
An algorithm is a sequence of instructions or a set of rules to get something done.
You’ll favour a particular route home from school – you can think of it as an algorithm. There are plenty of alternative routes home, and there’ll be an algorithm to describe each one of those too. There are even algorithms for deciding the shortest or fastest route, such as form the basis of satnav systems.
Algorithms are written for a human, rather than for a computer to understand. In this way, algorithms differ from programs.
A set of rules – an algorithm – for multiplying a number by ten. (περισσότερα…)