How can teachers engage students to learn problem-solving skills across the curriculum? One program has set out to teach computational thinking (CT) and coding skills in a problem-centered approach, fostering a student-driven learning design. In the process, students develop persistence and creativity while teachers connect their learning with professional standards aligned with ISTE micro-credentials.

Tony Lam, head of mathematics at Marymount Primary School in Hong Kong, recognized the mindset change required to create a student-centered coding experience. Instead of simply giving step-by-step instructions for students to develop computer programs in a teacher-centered approach, he encourages students to solve problems via active learning.

Lam, who began learning to code six years ago, developed his skills at the Massachusetts Institute of Technology (MIT) Master Trainer Program in Boston, an experience sponsored by his school and supported by CoolThink@JC. Now, he hosts professional development workshops and lesson demonstrations for other teachers in Hong Kong. Recently, EdSurge spoke with Lam about his experience as a teacher leader for CoolThink@JC InnoCommunity, a community supported by over 50 frontline and dedicated teachers, serving over 100 primary schools.

EdSurge: How would you describe the CoolThink curriculum adoption for your school?

Lam: Marymount, an all-girls school, was one of the first primary schools in Hong Kong to implement the CoolThink curriculum. Professors and lecturers from MIT and the Education University of Hong Kong (EDUHK) provided 78 hours of training to the first batch of teachers to explore and learn the CoolThink curriculum. EDUHK held regular workshops to update teachers on any developments and changes in the program.

The CoolThink curriculum offers a new element to the overall programs of our school and provides new opportunities for girls to become digital creators and makers by learning to code. CoolThink is a milestone in STEM education in Hong Kong, providing a comprehensive and proven framework for computational thinking and coding education. CoolThink’s mission of preparing students’ computational thinking skills—critical thinking, problem-solving and empowerment—are essential for digital competence in today’s AI-powered world where the ability to think critically and determine fact from fiction is extremely important. AI or ChatGPT won’t replace you any time soon, but someone using AI will.

Once we were accustomed to the CoolThink curriculum structure, we customized some aspects, such as the themes and difficulty levels, to suit our students’ learning needs and interests. For instance, we created a unit called Mascot Random Generator, in which students create an app that can randomly generate one of the six School Value Mascots, or they can customize the app to randomly generate anything, like pop stars or favorite food. Another example is the collaboration of technology and mathematics panels to guide the students to create arithmetic programs to solve particular problems like finding the greatest common factor.

Eventually, I started to train the trainers and provide support for others to learn the CoolThink curriculum. We collaborated with Hong Kong’s Education Bureau and held teacher workshops to share our experiences. We also hosted student workshops in other schools that had not yet joined the CoolThink project to provide learning opportunities for students and demonstrate to the teachers how CoolThink lessons work. We collaborated with MIT Hong Kong Innovation Node to provide professional development for teachers in blended learning mode. It is crucial to have more trainer mentors so that the teacher-learning community will keep growing and ensure the continuous development of computational thinking and coding education.

How do teachers and students benefit from a problem-centered coding curriculum?

This curriculum has changed my teaching mindset. The CoolThink pedagogy emphasizes To Play, To Think, To Code, To Reflect. We encourage students to explore the apps that they will eventually create. We guide them to observe, think about critical features and problem-solve before they start to code. The CoolThink curriculum is motivating and interactive, inspiring students to create, experiment and debug with less direction from teachers.

Such a mindset change can eventually produce a more innovative learning and teaching approach across other areas. I now duplicate the same framework in my mathematics lessons. Instead of simply drilling mathematics problems, I invite students to share what mathematical concepts they have applied through games they create.

CoolThink provides equal access and learning opportunity for students regardless of their backgrounds, especially those from low-income and ethnic minority groups. For example, one of our students did not excel in the traditional curriculum despite being very creative and logical. But when we introduced the CoolThink curriculum in our school, she did a lot of research online to learn and create different apps. She joined coding competitions and won several prizes. Learning to code also motivated her learning in mathematics and art. Now she plans to attend a university and be a scientist.

pedagogy cropped 1677966988
The CoolThink Pedagogy. Image Credit: CoolThink

How does CoolThink help address the digital divide and prepare students for the future?

In the kick-start phase, CoolThink provides aid to schools by hiring additional teacher assistants and purchasing digital devices, which allows students from different social classes to have equal access to hardware and learning resources. A CoolThink YouTube channel with more than 100 teaching videos is available for Cantonese-speaking students. CoolThink provides equal access to information and resources for students so that all students can become programmers.

CoolThink prepares students for many pathways by helping them acquire basic computational thinking concepts and building a foundation in programming languages early. This helps students become more sufficient self-learners in coding and broaden their career choices in STEM-related fields. CT practices like testing and debugging and being incremental and iterative also develop their perseverant spirit in problem-solving. CoolThink prepares students for entrepreneurship by empowering them with confidence and creativity, transforming students from digital consumers to digital creators.