Julian Yap's Coding Projects

My name is Julian, and I am 12 years old. I began learning robotics with LEGO Mindstorms and block-based coding when I was in Primary 4. I enjoy designing and building different structures and robots, especially those that help automate simple daily tasks. Learning robotics taught me how to solve real-world problems and sparked my curiosity to go beyond block-based coding. That was when I became interested in Python, a text-based programming language. I wanted to create programs that could help me solve math problems without needing pen and paper. I also learned how to use Pygame, where I developed various games for my friends to play and challenge each other. Throughout this journey, I have been documenting my experiences in robotics, coding, innovation, and STEM.

Portrait of Julian Yap

Project 1: Ping Pong Racket

Ping Pong Racket

I learned how to use LEGO Technic parts to design and build various mechanical structures. By applying coding concepts such as conditionals (if-else) and incorporating different sensors, I programmed my designs to perform specific actions based on real-time input. For example, I created a ping pong racket mechanism that swings to hit the ball when the touch sensor is activated—demonstrating how sensor-triggered automation is used in real-world systems that respond to user input.

Project 1: Ping Pong Racket
Project 2: Rack and Pinion Door
Project 2: Rack and Pinion Door

Rack and Pinion Door

I built various mechanical structures using LEGO Technic parts and applied conditional logic (if-else) with different sensors. For this project, I created a rack and pinion automatic door using an ultrasonic sensor. The door opens when a person is detected within a certain distance, just like the automatic sliding doors commonly found in shopping centers. This project demonstrates how sensor technology improves accessibility, convenience, and energy efficiency in real-life buildings.

Project 3: 2 Colour Activated Shooter

2 Colour Activated Shooter

Having played at the arcade frequently, I decided to use the concepts of conditional statements, colour detection and output controls to create a secure and precise shooter that fires a shot when the colour sensor detects 2 specific colours in the coded order. This project demonstrates how sensor integration and conditional logic can be used to develop automated systems, with potential applications in intelligent defense technologies.

Project 3: 2 Colour Activated Shooter
Project 4: Touch-Activated Automated Rabbit Head
Project 4: Touch-Activated Automated Rabbit Head

Touch-Activated Automated Rabbit Head

My younger siblings enjoyed playing with their toy rabbit head, which spun when the wind hit it. They used to manually spin and stop it, which was fun but limited. To make it more interactive, I created an automated version. In this upgraded design, the rabbit head spins automatically when the program starts. When the ultrasonic sensor detects someone nearby—such as a child approaching—the spinning stops, and the toy returns to its original position. This project demonstrates how sensors can bring simple toys to life.