Projects

EZGit

In this three-term team development project, my team and I planned and implemented a piece of software utilizing Agile/Scrum project management and C# to allow any user to harness the power of Git to create and share projects (repositories), versions (branches), and allows for seamless file synchronizations between clients, bringing the power of Git to the average user.

C#

Optimized Vector

View on GitHub

An optimized implementation of a vector class that doesn’t use C++ exceptions. I design many of my C++ projects with a goal of minimizing the use of exceptions, and as such I tend to avoid the STL where possible. Because I find myself using std::vector very often, I thought it would be worthwhile to roll my own vector class which did not make use of exceptions. The performance of my vector class typically exceeds the performance of std::vector (VS2019’s implementation), often by a factor of 1.5x-5x depending on the functionality being tested. I am confident that as I improve my vector and add functionality, I will be able to squeeze even more performance out of it.

C++

Intel 8080 Emulator

View on GitHub

Writing emulators has always interested me, and I thought that writing an Intel 8080 emulator would be a great introduction to the subject. I’ve been having a blast learning as I read the 8080 Programming Manual to figure out the specifications of the 8080 assembly language, implement new instructions, and read and write 8080 assembly to test the functionality that I implement.

C++

Simple Plugin System

View on GitHub

Plugins and mods are a simple but powerful concept. They allow for the massive extension and decoration of your application by allowing dynamic behavior association from discrete units of code. The simple platform that I have laid out allows for very flexible code injection, and is limited purely by the amount of implementation detail that the application developer wants to expose to the plugin developers.

C++

Dashboard

Dashboard is a productivity application that allows users to collect all of their most-used shortcuts, applications, webpages, and documents, and more all in one place to decrease the amount of time searching, and increase the amount of time doing. Other features of Dashboard include the ability to combine shortcuts together into macros so that users can launch multiple applications, webpages, and documents simultaneously with a single click. Dashboard also incorporates notebooks, alarms, reminders, to-do lists, and more to help users spend less time managing their tasks, and more time actually doing them.

C#

Route Optimization

My Route Optimization project tackles the issues faced when attempting to coordinate a delivery or transit driver with a set manifest of stops. With an emphasis on ensuring that time constraints are respected and prerequisite stops are completed in an appropriate order, Route Optimization aims to offer a simple solution to the complex issue of stop organization, and ensure business requirements are met.

C++

UML++

UML diagrams are a very powerful planning tool, and UML++ aims to be a simple and expandable round-trip engineering software, allowing users to create UML diagrams and generate skeletons of classes in the languages of their choice, or generate UML diagrams from existing code.

C#

 18,491