My name is Vicki, and I am 12 years old. I started learning robotics with LEGO Mindstorms and block-based coding in Primary 4, where I enjoyed designing and building robots to automate daily tasks. Robotics inspired me to solve real-world problems and explore beyond block-based coding, which led me to learn Python. Using Python, I wrote programs to solve math problems without pen and paper. I also learned Pygame to create educational games where my friends could compete and challenge one another. I have documented my journey in robotics, coding, innovation, and STEM.
I learned how to use LEGO Technic parts to design and build functional mechanical systems. By applying coding concepts such as conditionals (if-else) and integrating various sensors, I programmed my creations to respond dynamically to their environment. One example was a bumper car that automatically reverses when its front touch sensor detects a collision—mimicking real-world applications of obstacle detection used in autonomous vehicles and robotic systems to enhance safety and navigation.
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 built a tractor. Using the ultrasonic sensor, the tractor moves when it detects the load on it. Such autonomous track-based vehicles are used to transport goods between different stations. Once the sensor detects the object, the vehicle automatically moves to deliver the item to the designated location. This automation reduces the need for human labor, increases efficiency, and ensures precise handling of materials.
Having played at the arcade frequently, I decided to apply the same concepts and design principles to create a robotic gripper that opens and closes only when a touch sensor is activated. This mechanism allows for precise control, mimicking the arcade claw machine’s motion. Beyond recreation, this design has real-world applications — such as in assistive robotics, where touch-sensitive grippers can help individuals with limited mobility pick up and release objects safely, or in industrial automation, where the system can handle delicate components without causing damage. By integrating touch-based activation, the gripper combines fun design inspiration with practical functionality for real-world use.
I decided to create an automated car using LEGO Technic parts that can return to its original parking position after detecting an obstacle. This project simulates the logic behind autonomous parking systems found in modern vehicles. Using the concept of nested while loops with variables, I programmed the car to activate and begin moving when the colour sensor detects a colour. While in motion, the car continuously checks for obstacles using the Infrared sensor. Once an obstacle is detected, the car automatically stops and reverses back to its starting point—mimicking a vehicle returning to its parking spot.
Inspired by a line-following robot I observed at the library—used to transport books from the return bin to the sorting section—I decided to design a similar robot for home use. My version is programmed to follow a black line on the floor, allowing it to navigate efficiently through designated areas that require cleaning.
As someone who enjoys exercising on a treadmill, I decided to recreate an automated treadmill using LEGO Technic parts. This miniature version functions similarly to a real treadmill—its speed is controlled by user input. With the use of a touch sensor, and coding concepts such as variables and if-else statements, the treadmill increases speed with each press—just like speed adjustments on a real gym machine.
This project shows how to calculate the remainder when one number is divided by another. It’s a great way to practice using arithmetic and the modulo operator (%).
In this project, I designed a program that checks if a number is even or odd using if-else statements. This project teaches me how to make decisions in code based on conditions.
This game challenges you to decide if a number is prime by using if-else statements. It’s a fun way to reinforce the concept of prime numbers and divisibility in code.
I organized a math competition among my friends, and one of the challenges involved calculating the factorial of a given number. I created a Python script that took a user input and calculated the factorial of the given number.
In this project, I used a for loop to count the number of vowels and consonants in a given string. The loop iterates through each character in the string, checking if it is a vowel or consonant, and updates the counts accordingly.
In this project, I created a number pyramid using nested for loops. The outer loop controls the number of rows, while the inner loop prints the numbers in each row. This project demonstrates how to use loops to create patterns and shapes in Python.
In this project, I learned how to create a program that takes in a user input for a choice of word and prints the word diagonally in a square matrix using a nested for loop concept.
In this project, I created a program that uses nested loops concept to build a classic math triangle known where each number is the sum of the two numbers above it.
I have created a Python script named sum_of_my_even_numbers.py. It prompts me for a positive integer, and using a while loop, it calculates and displays the sum of all even numbers from 2 to the entered integer.
In this project, I built a countdown timer that uses a while loop to count down from a starting number until it reaches 1. This is important because it shows me how to repeat an action until a condition is met.