Older Projects
Below I list out some other random CS-based projects I have done. Some are software-engineering type work, others are small class projects I did.
-
Drawing Fair Voting Districts
A project for my Introduction to Optimisation class. The goal is to draw fair voting districts given hypothetical areas with different population distributions. The methods of drawing is by considering the geometry of what we want the voting districts to look like, and adjusting the objectives of our optimisation problem to match those conditions.
repository -
Flows Solver
A project I did in my spare time. Flows is a game where you are given a grid containing pairs of dots of different colours scattered around the board, and the goal is to connect the dots of the same colours with each other without the paths overlapping. In this project, we convert one of the Flows puzzle level into a linear program and solving them. As an added bonus, we do some screenshot recognition and attempt to also draw the solution on the screenshot given.
repository video -
BJ 21
A project I did for my Interacton Designs class. This was a variant of Black Jack, where two players face off online and try to make their cards get as close to some score without going over. We added some bonus cards to make the game more interesting, and made it an online multiplayer game.
The project involved a team of five. Myself and another friend handled the backend side of the game, where we made sure the game mechanics work as intended.
-
Lyrics Game
A project I did in my spare time. The web-based game is a multiple-choice quiz where the user guesses which song a certain piece lyrics is from. The game includes the frontend component based on React, where the user can select the artist they want the lyrics to be from, and the actual game part itself. The backend component is based on Flask, and only scrapes the lyrics from the appropriate website, and feeds the questions to be displayed by the frontend.
repository -
Electronics Projects
For my Electronics class, we had to make a whole bunch of mini-gadgets for the weekly assignments. I have compiled the interesting machines I have made for these assignments. I showcase these machines in the video linked below.
Additionally, I also have built a self-balancing robot for the final project of the class. The self-balancing robot involves basic control theory for the balancing mechanics, and custom-printed parts for the structure. This is final machine shown in the video linked below.
video