August 2022 - May 2023
In conjunction with four other students, our faculty advisor, and our
sponsoring organization (The U.S. Army
Combat Capabilities Development Command (DEVCOM)), we improved upon a prior iteration of
this project performed in the last academic year. In doing so, we made its existing
parachute drop
simulator more flexible by porting helper external tooling into
its native C++, eliminating the need of hardcoding in geographical coordinates. We also
made this simulation easy to use and dynamic
for end-users by introducing resonsive user interface modules
whereas prior use required direct changes to source code.
Finally, we pioneered an initial implementation of a convolutional neural network implemented in
tensorflow for geographic object
recognition to be trained on inputs from the parachute simulator. These efforts are a part of a
long term effort by DEVCOM to improve autonomous vehicle maneuvering completely independent of
GPS systems
I created (and am still working on) this tool to help developers, such as myself,
quickly profile their
codebases for TODO,
FIXME, and other temporary planner comments that could be easy to lose track of over time. This
tool is written in C++ and is designed to prioritize
speed first and foremost while allowing users to capture output to a log file. Currently, the
tool supports scanning numerous types of source code files with different comment formats, with
more planned on the way (// and # are the two main ones at the moment).
While also still being a work in progress, this project was created to practice my
opinions and principles surrounding UX, namely that I believe the best UIs are the ones that are
dead simple to use for anyone while still being fun and beneficial to use. Even though this
prgram is no Neovim quite yet, this project has some optimizations to quickly load text on to
the screen (at the moment, just some special chosen cache sizes). This project is written mainly
in C++20, however I am looking into making improvements using C++'s expanding string_view
library with C++23.
March 2021 - October 2021
This project served as the social science capstone of my degree. The first half of
this project lasted seven weeks and comprised of background research
into the environmental effects of Bitcoin and other cryptocurrencies in Iceland. We analyzed
perspectives from financial experts, environmental experts, and
supposed opinions from the general public. The second half of this project, which also lasted
seven weeks, comprised of my team and I conducting our own research
to either corroborate or contradict our background findings. We found many interesting facets
surrounding Bitcoin, most notably
a disparity of knowledge about cryptocurrency from the general public.
In this project, my project teammate and I worked together to use multithreaded
concurrency in C to simulate two real life problems.
Firstly, we wanted to simulate an omnisports complex that could support multiple sports that had
different conditions to start a game. Here, each player was represented with a thread. Secondly,
we simulated an airport where planes would taxi to a runway then attempt to takeoff, waiting if
a different plane was in the process of doing so. Again, each plane was represented with a
thread.
We used two different mthods of mutual exclusion. The sports park portion used conditional
variables while the airport simulation used semaphores.