We help schools introduce
Computational Thinking
to learners.
Our learning activities offer opportunities for learners to develop their abilities for logical thinking and problem solving through creative computing, programming and exploring mathematics.
Create, Learn, Think.
Learning Activities
Computational Thinking
In the digital age, transmitting Computational Thinking to our children is fundamental in the same way as reading, writing or arithmetic.
Programming
Computational Thinking is a cognitive ability, and programming is one way to develop that ability.
Programming is essential to Computational Thinking just as manipulating geometric shapes and numbers is essential to mathematical thinking.
Programming & Mathematics
Enable learners to explore mathematical ideas
through learning to program.
Elements of Computational Thinking
Problem solving skills
Decomposition
Understand that solving a large problem can involve breaking it down into a set of smaller problems.
Pattern Recognition
Appreciate that a new problem is likely to be related to other problems the learner has already solved.
Abstraction
See a problem and its solution at many levels of detail and consider only the details that matter.
Generalisation
Realise that a solution to a problem can be made in ways that can solve a range of related problems.
Algorithms
Think of tasks as a series of steps.
Dimensions of Computational Thinking
Capture the what, how and why of CT
Computational concepts
The concepts designers employ as they program, such as sequences, loops, conditions, subroutines, variables.
Computational practices
The practices designers develop as they
program, such as being incremental and iterative, testing and debugging, reusing and remixing, abstracting and modularizing.
Computational perspectives
The perspectives designers form about the world around them and about themselves: expressing, connecting and questioning.
Pedagogical Framework for Computational Thinking
Four pedagogical experiences
Unplugged
Focus on activities implemented without the use of computers.
Tinkering
Involves activities that take things apart and engage in changes and/or modifications to existing objects.
Making
Involves activities where constructing new objects is the primary focus.
Remixing
Refers to those experiences that involve the appropriation of objects or components of objects for use in other objects or for other purposes.
Pedagogy
Explore
investigate, try things on your own, debug in response to feedback.
Envisage
have a goal in mind, predict the outcome of the program before trying.
Explain
explain what you are doing, articulate the reasons for your approach.
Exchange
collaborate and share, try to see a problem from another's point of view, defend your own approach and compare yourself with others.
Educational Programming Environment
From Block-based to Text-based, a smooth transition
Learning Pathway
Intended for elementary and middle school students
Elementary school grades 5 & 6
Middle school grade 7
Introduction to programming with a visual block-based language.
Scratch programming
- Creative computing.
- ScratchMaths.
Middle school grade 8
From block-based programming to text-based programming, a smooth transition.
Using a simple educational programming language allows the learner to focus on learning computational thinking.
- Programming with Logo and Turtle Geometry and exploring Maths.
- Programming a virtual robot with Robo.
Middle school grade 9
From Logo to Python, a smooth transition.
Python programming
- Turtle geometry module.
- Programming a virtual robot (Robo).
- Programming a Digital Audio Workstation (DAW): mixing audio clips for musical creation.