Coding & Robotics

Coding is another of my superpowers. From a young age, I’ve been drawn to the endless possibilities that coding presents, allowing human beings to create, innovate, and solve problems.

I was among a handful of students selected by my school to participate in the Hwa Chong Infocomm Challenge (HCIC). I achieved the Silver Award after demonstrating my knowledge of Python programming, Robotics theory and Mathematics, which is reserved for the top 10% of participants.

What sets me apart from my peers is my ability to conceptualise and adopt an inter-disciplinary approach in my projects. For example, by combining mathematics, cryptography, and coding, I wrote my own code and made encryptors and decryptors in Scratch, such as this personal project about the Vigenère Cipher that I made when I was in Primary 5.

I) My Vigenère Cipher Project

The Vigenère Cipher is a method of encrypting alphabetic text by using a simple form of polyalphabetic substitution. It enhances the security of a standard Caesar Cipher by using a series of Caesar Ciphers based on the letters of a keyword. 

In an era where the protection of organizations’ digital assets and information systems is increasingly important, I find it essential to understand and mitigate cyber threats. Over the past few months, I have been teaching myself to use Kali Linux and its suite of cybersecurity tools through various online resources. This self-directed learning has equipped me with some skills to identify and address vulnerabilities, reinforcing my commitment to safeguarding digital environments.

Moreover, I am eager to participate in cybersecurity competitions such as WhiteHack and other capture the flag (CTF) contests during secondary school.

Beyond cybersecurity, I am also interested in the development of software systems for cryptocurrencies and blockchain platforms. The potential of blockchain technology to revolutionize various industries inspires me to delve into its applications.

Additionally, I am keen to learn the use of mathematics, statistics, and computer science to develop algorithms and mathematical models for financial strategies and trading. This interest extends to building artificial intelligence (AI) models, where I aim to harness the power of AI to create intelligent systems that can learn, adapt, and solve complex problems.

II) Unity 3D projects completed in April and June 2024

I started learning Unity in April 2024 after the First League Lego competition ended. Below are  my first two Unity 3D projects. Learning Unity and C# demonstrates my advanced understanding of coding concepts beyond most of my peers. Typically, many people start exploring Unity during their tertiary education, but I was given the opportunity to learn it at Primary 6 as my teacher at the School of Robotics believes that I have the aptitude to tackle it.

Developing a game also sharpened my problem-solving skills, from debugging code to designing intuitive user interfaces.

Imploder Game in Unity 3D

The “Imploder” game, which I created from May to June, is an action-packed arcade-style game where the primary goal is to destroy or implode food targets while avoiding the bombs. There are three difficulty levels.

Truck Driving Simulator Unity 3D

The truck driving simulator was my first Unity project, created in April this year. I learnt the use of C# scripting for basic functionalities like vehicle movement, which involves understanding Unity’s physics engine and applying it to the truck model.

This project demonstrates my growing skills and confidence in handling more advanced coding projects. You can read here the letter of recommendation from my Unity tutor at the School of Robotics or view it in the gallery below.

III) 2023 World Robot Olympiad™ (Lego Mindstorms EV3)

Here I am sharing my journey at the 2023 World Robot Olympiad™ where I competed using LEGO Mindstorms EV3.

I was the lead coder for the team and was mainly responsible for programming the robot to complete various stages of the mission. It was a tough and thrilling experience, requiring precise coding and meticulous calibration of the sensors. With perseverance and teamwork, our robot fulfilled the assigned tasks, and our team ultimately received the Bronze medal. I also made good friends, thanks to the WRO.

IV) Arduino Assistive Walking Device

I participated in an Arduino workshop with Whyte Lab in Primary 5. I chose to make an Arduino-based assistive walking device designed to enhance mobility for visually impaired individuals. This innovative project utilizes various sensors to detect obstacles and provide real-time feedback, helping users navigate their surroundings with greater confidence and safety.

By integrating ultrasonic sensors and vibration motors, the device alerts users to obstacles in their path, allowing for timely adjustments and improved mobility. The sensors emit sound waves that bounce off nearby objects and return to the sensor, enabling the device to calculate the distance based on the time it takes for the echo to return.

Working on this assistive device has been an exciting and rewarding experience, offering me valuable insights into robotics and the potential to improve people’s lives with technology.

V) Arduino Walking Hexapod Robot

This was another robot I made during an Intermediate Arduino course with Whyte Lab in Primary 5. I eagerly took on the challenge of building my own hexapod robot, aiming to replicate the movements of ants with a focus on acceleration dynamics. Programming became my playground as I coordinated leg movements to mimic nature’s patterns. Despite being the youngest participant, I proudly showcased my robot alongside older peers in secondary school. The friendly competition was an enriching experience, fostering collaboration and skill development as we all celebrated the creation of our hexapod robots.

VI) Emotion Analyser

I created this emotion analyser app in Thunkable when I was in Primary 5. It uses the Face++ API to detect and analyse humans’ facial features through image recognition. The user-friendly interface can quickly scan any human face and identifies the complex emotions the person is feeling. It even provides a detailed breakdown of all the moods.

Emotion-analysing apps can have significant usefulness across various fields, both now and in the future. In many shops, they can detect customers’ emotions and provide real-time feedback to service staff to improve customers’ satisfaction. In healthcare, these apps can monitor patients’ emotions and moods, aiding in mental health assessments and personal care.

VII) MIT App Inventor – Healthy Living Companion

Preview: https://gallery.appinventor.mit.edu/?galleryid=e0c1b022-7cc6-4375-93e4-e6ffa4e1d3bb
Github: https://github.com/Lokinove/healthy-living-companion

This project was developed using MIT App Inventor: a user-friendly exercise step tracker that not only counts the user’s steps but also keeps track of his location using GPS. This app lets users create an account, track their steps, and even manage location data with a feature-rich interface. The “Distance Keeper” page is designed for ease of use on any smartphone, offering options to start, save, reset distance data, and display total steps and distance with a pedometer component.

This tool is suitable for my classmates and family members, encouraging them to stay active and informed about their location safely.

Since I embarked on the journey of learning Python when I was in Primary 3, I have amassed more than 200 course hours since 2021. Here is a recommendation letter from my teachers at Coding Lab, with full details of the modules I mastered.

I also have weekly Python lessons with Strive Math, which adopts a multi-disciplinary approach that combines Python with Mathematics and other subjects. You can click here to see my recent projects on Github, as well as my Strive Math teacher’s recommendation letter.

VIII) 3D Simulation of the Solar System in Python

I created a 3D simulation of our solar system in Primary 5, designed to visually represent the planets orbiting the Sun in three dimensions. It allows users to explore the positions, movements, and possibly other characteristics (such as planet sizes or orbits) of the planets within our solar system, providing an interactive experience that enhances people’s understanding of astronomical concepts.

Teacher’s comments: This project reflects an advanced understanding of programming concepts, which is remarkable for a Grade 5 student. The sophistication of the project is evident in its functionality, user interface, and the coding techniques used to create it. It demonstrates not only a strong grasp of programming fundamentals but also creativity and problem-solving skills that stand out among peers of the same age. This level of skill and creativity in coding is exceptional for a student in elementary school, indicating a high level of understanding and application of coding concepts.

IX) Mario in Python

In my work-in-progress Mario game, the program starts by loading custom sprites and creating animations. It then handles character movements, detects collisions, and includes a jumping mechanic to bring the classic Mario experience to life. Although developed using Python, the game leverages HTML-like output for display, combining the flexibility of Python scripting with the visual capabilities of web technologies.

X) Portable Safe with Customisable Cover  

Incorporating technology to enhance its functionality, I made this portable safe from Lego bricks in 2021 when I was in Primary 3. My purpose was to allow users to keep small valuable items securely.

Traditional safes are huge and bulky to install, but I wanted to design something that is secure, much smaller to fit in modern homes, and incorporates some elements of artificial intelligence (AI).

I programmed the safe to be both interactive and secure. A fun and creative feature is the LED display on the front cover, which can display personalised signals that indicate the security status of the safe. One challenge I encountered was trying to build the initial model. It took a few tries before I succeeded. However, I improved my Scratch coding skills during the process.

Languages Learnt

  • Scratch, Python, HTML, MIT App Inventor, Thunkable
  • Work in progress: Unity, C-sharp 

Coding & Robotics Competitions

  • 2024 Hwa Chong Infocomm Challenge – Silver
  • 2024 First League Lego 
  • 2023 World Robot Olympiad – Bronze
  • 2022 CodeFest
  • 2021 IKCC Scratch – Outstanding Animation 

Advanced Computer Scientist Modules Covered:

(These are the Advanced Computer Scientist emblems)

  • Healthy 365
  • Python Game Development
  • Micro:bit Advanced
  • Python Health Advisor
  • Develop iOS Mobile Apps
  • Micro:bit with Additional Sensors

Young Computer Scientist Modules Covered:

(These are the Young Computer Scientist emblems)

  • Augmented Reality
  • Makey Makey
  • Micro:bit
  • Mathematics (Geometry)
  • Biology
  • Popular Games
  • Movie Magic
  • Robotics