As a guitarist, I practice a lot using the metronome to refine my technique and work on difficult parts.
One of the most frustrating things for me was that if I wanted to practice a song I'd have to search the original tempo and then set the metronome.
Additionally, when practicing exercises, I have to either set a separate timer or keep track of the time, so I practice everything equally and at different speeds. There was a lot of friction trying to set the speed up or down every few minutes and it ultimately made me want to practice less with a metronome, to avoid these small annoyances.
I decided to create an AI powered metronome, which in addition to the classic metronome settings (Speed + -, different sounds) can take a prompt from a user to create a specific routine and improve practice efficiency.
Here are some examples of what the user can do:
Search Song BPMs
"Master of Puppets"
"Paradise City at 85%"
"Stairway to Heaven by Led Zeppelin at 105%"
Routines & Loops
"Alternate 100 and 120 bpm every 4 seconds"
"Start at 60, increase by 5 every 10s until 100"
"Gradually increase from 60 to 120 bpm over 1 minute, pause for 10s, repeat"
Finally, the system stores the 10 most recent searches, enabling users to easily switch back and forth between routines with just a click.
The web app was developed using HTML, CSS and JS as well as a Google Gemini API
You can check out the metronome here
In late September - early October of 2024 I came up with the idea of playing backgammon with a different set of dice. Normal backgammon is played with 2d6, meaning 2 dice with 6 faces with values ranging from 1-6.
My idea was to create a different game mode and I ended up creating three of them:
Play with 2d4 (2 dice, 4 faces)
Play with 2d8 (2 dice, 8 faces)
Play with 1d4 and 1d8 (a die with 4 faces and a die with 8 faces)
After testing out this idea, I discovered that it is a lot of fun as it completely changes the way a player thinks during a normal game. Introducing different dice changes the statistics and probabilities of rolling doubles, or a specific number. This change results in the player having to adapt his or her playstyle to accommodate for the dice change as the game can get faster, or riskier depending on the die selection.
This idea turned out to be really unique and lots of fun. I decided that creating the game digitally would be a great way to introduce to people around the world. Also, since I never programmed in Python, I decided it would be a good challenge for me as well.
Although I need to add some cosmetics and a few more features, you can download the code and play and early version here.
When I upgraded my first guitar's pickups, I had the idea of building another guitar to use the old pickups in. There were a couple of reasons for this. Firstly, I didn't like having unused gear and selling some beginner's guitar stock pickups wasn't likely. Secondly, it would make for some interesting research and would present a nice challenge, an excellent use of my free time. Finally, it was a project that I started with my father, so this would also be something the two of us could do and have something to keep from it. Even if the guitar didn't turn out to be amazing, it would be a good first experience, and we could always try again. I also thought it wouldn't be too costly, since I already had all the electronics, all I needed was some wood and hardware (tuners, bridge, etc).
While researching however, and at the early stages I decided to do it properly since we would be going through the trouble anyway, so I opted for new stratocaster style pickups (instead of humbuckers) and good quality hardware. The entire process is published here
After competing in a few national Robotex competitions in Cyprus using the LEGO EV3, I "graduated" to the next step, which was Arduino robotics. This was a huge step forward as the guard rails were gone. Creating a robot with assorted parts and electronics was vastly different compared to having ready blocks and a general schematic of the final design. Additionally, this meant leaving behind the drag and drop, code blocks programming and using Arduino C, which I thought would be easier, already having some coding experience.
After winning the national competition, I was selected to represent Cyprus in the international competition in Estonia. However, being one of the first people from Cyprus to compete internationally (robotics competitions were still new in Cyprus), we faced some unexpected issues. Other teams with more experience and budget came in with motors fitted in their robots to suck the air form underneath the car and make it have better traction, and custom made silicone wheels. We were using standard rubber wheels (budget, experience, time and logistics constraints of living in Cyprus), which were fine for our local competition.
However, the track material in Estonia was different than the one we had back home. We were allowed 1 or 2 hours prior to the competition to test our robots and make any final adjustments. To our horror we discovered that the track was too slippery and our robot just spun its wheels in place. With limited time and resources, we scrambled to find a solution, which ended up being broken balloons around the tires to increase grip and lower speed.
Although we performed relatively poorly, we were satisfied with our results and it was an overall great experience. We were quick on our feet and successfully adapted to an unexpected situation making the best of the situation. And to get to the point where we represented our country on and international level was a huge honor and proof that we could achieve anything when we put our minds to it. It also prepared us and future contestants for their next endeavors.
Me and a group of friends entered a technology competition during our last year in high school. Our idea was to create a fully automated autonomous aquaponic system. Inspired by hydroponic farms we decided to combine hydroponics and a fish tank. This contraption was small enough to fit into any apartment or balcony, allowing anyone to have fresh, homegrown fruit and vegetables (eg lettuce, tomatoes, strawberries, etc).
At the bottom we had our fish tank, which was home to some goldfish. We also installed a box that could hold up to two weeks food and a mechanized door. Above the fish tank we had our plant bed, divided in two sections, one for plants that needed to be constantly in the water and one for plants that don't need constant watering. Using tubes and a small motor, we could pump water from the fish tank to water our plants. The plants used fish waste as fertilizer and also acted as a water filter, providing the fish with clean water.
Our device had all the features needed so it could be a "set it and forget it" system. These included:
An overflow drain system that would go in the fish tank if the vegetables flooded
A cover that could be open or closed depending on the temperature and plants grown
LED lights to provide simulated sunlight if needed
A solar panel so the system could run off the grid
Self cleaning fish tank
An arduino system that could open and close the lids, turn the lights on and off, water different plants at different times and feed the fish.
This all rounder project gave us hands on experience in working with different materials, insight into pipes and water systems, knowledge into gardening, electronics and programming experience. Furthermore, its a project that is useful to anyone, is environmentally friendly and can work for up to two weeks unattended.