Code Projects
Micromouse Robot
Micromouse competitions task the participants with building and programming a 18cm x 18cm robot that must solve a maze as quickly as possible. The first time I saw a video from one of these competitions, I was floored! Naturally, I decided to try it myself. Follow the links to my algorithm code on Github, or read the detail page for the whole story on the building process.
Anguish Languish Translator
The "Anguish Languish" is exactly like the English Language, except you are not allowed to use any words that mean what you are saying, only similar sounding ones. For example, "Little Red Riding Hood" becomes "Ladle Rat Rotten Hut". After debating with my little sister on whether building a program that translates from English to Anguish was feasable, I decided to give it a try!
This was my final project for Momentum! What a journey I had working on this app. I was on a team of four, lead by my older brother, and we all had such fun (when we were not completely stressed out). The website is a massively multiplayer online pictionary game (MMOPG for short). We had to learn a completely new technology (WebSockets and Django Channels) in order to handle real time multiplayer modes. In the end, I think we made something that pretty fun to play, and certainly learned more than I could have guessed.
Itunes Search
This assignment from Momentum Learning was designed to teach us how to interact with Web API's. We were asked to build a one-page web app that queried the Itunes API and updated search results live with JavaScript. It was alot of fun learning how to handle asynchronous functions, and certainly stretched my budding JavaScript skills to their max.
FreeShelf was one of the first full-fledged Django applications that my instructor at Momentum had us build. It was designed to teach us how to fully inplement our database with search results and posts. The web app is a resource for free online materials for those learning how to code, and users can submit, comment on, and like the various books and tutorials. Certainly a fitting assignment for someone learning the ways of Web Development!
Mystery Word
This project was the final pure Python assignment from Momentumg. It is a command line game of word guessing, modeled after the popular kid's game "Hangman" (now more appropriately named). The extra credit on this assignment was to create a computer that will change what word it is thinking of to dodge the player's guesses. My brother and I battled it out to see who could get the best algorithm. I like to believe I came out on top...
Pathfinder
The major new learning point in this project was how to use Python to read in data from a plain text file. In this case, we were using topographical data to construct an image of a topographical map using the Pillow library. We then had to algorithmically find the path through the map that required the least climbing up and down. I was not satisfied with a mere greedy algorithm and tried my best to find the TRUE best path, with great success and more than little head scratching.
The game of Pig, in which two or more players roll dice in trying to maximize their scores without busting, is a classic coding challenge for beginner computer scientists. This assignment from Momentum was our first deep dive into Python, and tasked us with creating a command line version of the game. I had fun with it by allowing the player to set how many computers he or she would compete against, and by writing several strategy algorithms that the computers would be randomly assigned.