Our Approach

We believe that primary school education should be key in laying the foundations for the computational thinking necessary to support participation in a computing-rich society. Computational thinking entails developing fluency with programming concepts (key constructs and ideas that are central to most forms of computing). But more fundamental than specific coding details, computational thinking includes the ability to pose problems and seek solutions that use key practices (the activities people engage in when creating computational projects) involved in computing and programming. And beyond solving problems with computers, young people should develop perspectives like digital empowerment, which enables them to see how challenges in the world around them could be addressed through computing; and computational identity, which instills in them the knowledge that they can have active, positive roles as people who can use computers to enhance their lives and the lives of people around them.

Our vision is that by supporting children in developing their computational thinking, we can help them transform from passive consumers to active designers and shapers of the digital future.

CT Concepts


CT Concepts: Fundamental Coding Concepts

< Sequences / > : identify a series of steps for a task
< Events / > : one thing causing another thing to happen
< Repetition / > : run the same sequence multiple times
< Conditionals / > : make decisions based on conditions
< Parallelism / > : make things happen at the same time
< Naming / > : name variables and functions descriptively to make them distinguishable from each other
< Operators / > : support for mathematical and logical expressions
< Manipulation of data and elementary data structures / > : basic ways data are formatted and stored as well as the way to store, retrieve and update values

CT Practices


CT Practices: Problem-solving Skills

< Algorithmic thinking / > : articulate a problem’s solution in well-defined rules and steps
< Abstracting and modularizing / > : explore connections between the whole and the parts
< Testing and debugging / > : make sure things work — and find and solve problems when they arise
< Being incremental and iterative / > : develop a little bit, then try it out, then develop more
< Reusing and remixing / > : make something by building on existing projects or ideas

CT Perspectives


CT Perspectives: Identity and Motivation

< Expressing / > : create and express ideas through this new medium
< Questioning / > : feel empowered to ask questions about and with technology
< Connecting / > : appreciate that others are engaged with – and appreciate – one’s creations
< Digital empowerment / > : develop the ability to see problems in the world as solvable through code
< Computational identity / > : see oneself as being able to enhance the world through coding


Check out our
pioneering schools.
View Now


Wish to learn more about
computational thinking?