My name is Nikolas, 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 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.
I enjoy going to the restaurant for sushi and decided to recreate an automated one. Using the lego technic parts and a colour sensor, I created a sushi belt that is activated to move only when it detects the colour green. This reduces unnecessary motion and saves energy.
Inspired by arcade coin dispensers, I applied the design principles and coding skills I learned to build a distance-activated coin dispenser. The dispenser uses two ultrasonic sensors that detect my hand in a specific sequence within a defined distance threshold. When both sensors are triggered in order, the mechanism opens to release coins. This project demonstrates how sensor integration and conditional logic can create automated systems, similar to those used in vending machines .
My younger siblings loved playing with their toy rabbit head, which spins when the wind hits it. They used to manually spin and stop it, which was fun but limited. To make it more interactive and engaging, I decided to create an automated version of the toy. In this upgraded version, the rabbit head starts spinning automatically as soon as the program runs. When the ultrasonic sensor detects someone nearby—such as a child approaching—the spinning stops, and the toy returns to its original position.
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.