

Programming Projects
My dream job is game development, as I am enticed by the creative freedom, but I enjoy all kinds of programming. One of my biggest strengths is code organization and documentation. My style is highly reusable and modular, because I am always thinking about what I might want to add in the future. I rarely find a programming challenge I can not solve, given time and research.
​
All content here is my own original work unless otherwise specified. Code samples can be downloaded or viewed online.
ARDUINO C++
An Arduino is a convenient gateway between code and the physical world. While I've dabbled with small projects in the past, I recently had the opportunity to work on a friend's very impressive senior project. With my existing background in C++ and OOP, and being generally starved for an excuse to program, I ended up writing an over-engineered menu-system to implement a very simple menu, but I learned a lot in the process.
MATLAB
I learned MATLAB in college, and quickly fell in love with the simplicity and power of it. Prompted by class projects, I created simulations, calculators, text-based and graphical UI, and miscellaneous ad hoc problem-solving tools.
​
The code can be downloaded in a word doc or the .m file in a zip folder.
Refraction Simulation
MATLAB, 2021
A light refraction/reflection simulation. GUI created from scratch; all fields are editable. First image models light passing from air (1) into water (1.333) and bending down. The second setup shows light refracting (green) or reflecting internally (red), depending on the angle. I added some functionality to the program (2022) before creating the second image.
Download Code:
Download Report:

Magnetic Levitation
MATLAB, 2022
Proof of concept: Levitate a small disc magnet (10g, 0.42 A*m^2) with an electromagnet (5cm radius, 500 turns, 1A). First image: magnetic repulsion force on the small magnet as it is moved away from the coil. Second image: Net force (gravity & magnetic) on the small magnet. Equilibrium occurs at 2.6cm above the coil, where the magnet would theoretically hover, if stabilized horizontally.
Download Code:


Miller Indices Calculator
MATLAB, 2021
A Text-based Miller Indices Calculator, with input error handling. I challenge myself to make my programs unique or excellent in some way. I often start by making it fully interactive, rather than using hard-coded values. The next challenge is to make sure there is no user input (blank, negative values, letters, etc.) that can crash the program, like the infinite loop shown in red.
Download Code:
Download Report:
UNITY & C#
Though I love coding ground-up, Software development with a game engine has its perks. Unity provides built in physics, rendering, and object management, which allowes me to focus on level design and writing scripts for behavioral AI, player controls, and special object interactions.
Java Script
Programmed using Khan Academy's ProcessingJS IDE
2013 - 2016, used OOP to create reusable elements, from GUI to particles, to enemies and obstacles. I even dabbled in some simple behavioral AI (fish). ProcessingJS provides simple graphics functions - everything else was built from scratch.
​
The programs below and their code can be viewed and run using the web links.