Overview
This initiative brought programming education to students in Phnom Penh, Cambodia, introducing them to the fundamentals of coding through two complementary tools: Scratch for visual, block-based programming, and Python for text-based scripting. The goal was to make coding accessible and engaging for learners with no prior experience.
Sessions were designed to be hands-on and project-based, giving students the opportunity to build something meaningful from the start. By moving from Scratch to Python, learners could develop confidence with visual logic before transitioning to written code — a progression that lowers the barrier to entry while building real skills.
Curriculum
Scratch — Visual Programming
- •Introduction to block-based coding and event-driven logic
- •Building simple animations and interactive stories
- •Loops, conditionals, and variables through visual blocks
- •Creating simple games to reinforce programming concepts
Python — Text-Based Programming
- •Introduction to Python syntax and the terminal environment
- •Variables, data types, and basic input/output
- •Control flow: if/else statements and loops
- •Functions and simple program structure
- •Building small projects: calculators, quizzes, and number games
Teaching Approach
Students built real projects from the first session, keeping engagement high and making concepts tangible.
Moving from visual Scratch blocks to Python text eased the transition and reinforced existing mental models.
Students worked in pairs and small groups, encouraging discussion and mutual problem-solving.
No prior coding experience required. Sessions were designed for complete beginners.
Reflections
Students engaged enthusiastically, particularly with Scratch's visual feedback — seeing their code immediately come to life on screen. The transition to Python required more patience but proved rewarding as students began to understand the relationship between logic and written syntax.
This experience reinforced a core belief behind SunlitPath: that well-designed educational tools can lower barriers and open doors. Coding is not a skill reserved for a privileged few — with the right introduction, learners anywhere can engage with it meaningfully and build real capability.