Computer Science
Projects:
- Mandarin Chinese Quiz
- Used Java to create a quiz to help user learn Mandarin Chinese
- Created 10 levels with increasing difficulty
- Option to create a new level as users become more advanced
- Major League Baseball Database
- Used C++11 to create a database of Baseball Players dating back to 1985
- Wrote code to implement a hash table and linked lists to create database of players
- Wrote a query function to extract and display player data from the database
- Movie Ranking Tree
- Used C++11 to create a tree of movies based on a given ranking
- Implemented a red/black tree
- Created function to find the longest path on the tree
- tsh Shell Scripting
- Used C to implement a tiny shell
- Created signal catchers to catch SIGCHILD, SIGINT, SIGSTP and SIGALRM signals
- Implemented an eval function to read in and interpret the command line
- Attack Lab
- Used Assembly and C code to find security vulnerabilities in given program
- Exploited these vulnerabilities to learn about buffer overflow
- Gained an understanding in how to write more secure programs
- Utilized features from the compiler and operating system to write a less vulnerable program
- Data Science
- Used python with panda, numpy, and scipy to analyze data sets
- Cleaned and analyzed dataframes to get useful information from them
- Utilized hypothesis testing, anova testing, and linear regression testing
- Settlers of 3010
- Created a board game similar to Settlers of Catan using c++ and the QTCreator environment
- Allowed players to play against another human, the computer or simulate multiple games of computer vs. computer
- Used a flywieght and singleton design pattern for the board of the game
- Used a factory design pattern for the creation of the squares