This page contains numerous projects including those found on the home page
Some of these projects were created in relation to a class
Other projects were developed during my spare time
Some of these projects are still in development
A fully interactive application that allows users to create and view their tickets
The application stores and retrieves customers, tickets, and airports from different databases
The databases were made simple and used consistent formatting
Part of a Software Modeling and Design Semester Long Project
Created as a shared GitHub Project
Designed based on UML diagrams and GRASP design patterns created by a team
Learned about creating menu objects and allowing interaction with them
Used custom Scanner classes to manage the transfer of data between the program and the databases
Created multiple threads to allow for asynchronous operations as well as unique visuals
Managed the development process and instructed team members on solutions
Handled and resolved merge conflicts between various git branches that were created
Used extensive debugging and error checking to find and test for issues with the logic
Used Exception Handling to prevent a user's invalid entries from corrupting the program
Implemented action listeners so the user can interact with objects
Made the experience unique to every user by gathering data on every customer
Used parsers for assigning format to date objects
Was a project submitted for a hackathon competition
Created with a group in Python using Pygame
Used Sprite sheets to animate the player and enemies
Learned more about Pygame and how you can use external platforms in conjunction with a programming language
Learned how to create logic for movement of player and developed in game collision physics for background objects and enemies
Worked with a team to complete the project
There was a limited deadline, and the team was forced to make changes to cater to this deadline
Implemented external custom resources such as soundtracks and visuals
This project is an extension to the Boggle Word Search game created for a Java II Class
Learned how to create graphical interfaces using JFrames
Used action listeners to make the program interactable
Used Exception Handling to deal with invalid user entries
Used visuals and sound effects to make the experience complete
Made the values in the word search table customizable
Allowed the user to choose different table sizes as well as use different Lexicon listings
Used Lexicon dictionaries and stored the values into a Sorted Set of strings
Used a depth first search algorithm to search for valid words on the generated board
Used 2 dimensional arrays to create the board
Used various functions for checking what neighbors existed near the current position
Used a scoreboard to keep track of the users correct responses
A collection of scripts that control logic and allow for custom automations in a connected home environment
The project was later expanded with a separate Hub to control an apartment
As an independent developer, created 41 unique pistons with various inputs using webCoRE
The Hub that controls the automations is the Samsung SmartThings Hub which is combined with Google Assistant, Amazon Alexa, Apple home kit, among other API's
Implemented 31 virtual switches and 9 custom device handlers for advanced automations
Learned more about how simple embedded devices communicate with each other
Learned more about gathering and responding to signals from an interconnected range of devices
Gathered expanded knowledge of how IoT (internet of things) devices operate
Had to use critical thinking to solve issues and engineer solutions
Used extensive debugging to find and correct mistakes while many different signals were competing for the same resources
Created using flexbox as a layout and using wrapping to flow content seamlessly between different devices and screen sizes
Developed a responsive navigation menu that changes depending on screen size
Used a repository design structure with HTML and CSS at the root with backend and visual components in sub directories
Inegrates with a Google Cloud backend server using 4 firestore collections all with different defined security rules to allow for user and general based messaging
Implemented Intersection Observers to gauge the users scroll position and activate scripts/animations accordingly
Used jQuery for simple backend components and JavaScript for the complex logic
Learned about Front End web development both in terms of design and in terms of customizing functionality
Learned how to implement non relational databases for Google Cloud with Firestore
Ran tests with Lighthouse to gauge performance, optimization, and accessibility features which were then implemented accordingly
Used the developer console to better understand how the site functions in addition to debugging issues and warnings
Learned about media queries and how they can be used to assist with accessibility, responsive design, and multiple browser support
Created custom animations with keyframes and learned about optimizing animations by using only transforms and opacity changes primarily
Used different kinds of positioning such as relative, absolute, and fixed and learned when each kind was appropriate
Wrote the project using Visual Studio Code and learned about the various extensions such as Live Server that are offered to assist with development
Final Project for my intro to Python class taken my Senior year in High School
First large scale interactive and design focused application I have developed
Used tkinter for creating the interface through Python
Implemented a skip question button which could be used to save a life and skip the question but also gave negative points to the player
Used a long list of Mad Gab phrases and randomly shuffles them for the user
Created a score board and 3 life system that changes depending on the difficulty selected
Learned about making object-oriented design through classes and various functions
Had to use display elements for the interface and experiment with the boundaries of what interactive elements can be created within tkinter
Learned how to use multi-threading to create a visual timer complete with custom warning time animations
Had to use message boxes to provide instruction to the player in addition to revealing the player's final score
Made the point system work differently depending on the level of difficulty of the question
Side Project I built to automate game night while at the company Holley
Used Arduino Leonardo as the microcontroller and a derviative of C/C++ for programming the device
Configured and wired varions inputs such as buttons, joysticks, and sensors
Output results to digital interface including OLED panel, 4 digit clock display, and multi colored RGB stick
Automates various menu selections by randomly selecting menu options depending on user specifications when starting program
Used a main UI for the user to pick through various scripts as well as sub menus for scripts the user selected
Tricked Nintendo Switch into recognizing Arduino device as an Nintendo Switch USB controller by updating arduino boards.txt file and using various libraries
Learned how to debug microcontrollers using the serial output
Needed to learn more about wiring to understand how to properly connect the pins to the Arduino including signals, ground, and power
Learned how different signals are perceived such as 2 analog signals for a joystick and a clock and Data I/O pin for a 4-digit seven segment display
Figured out than when dealing with multiple USB signals the Raspberry PI can make that process much more simple since it supports multiple HID USB devices
Learned the Arduino needs an FTDI convertor over the RX/TX connectors to make sending HID signals possible since RX/TX provides serial data which is not transmiting via HID signals
Created Installer applications for Windows, MacOS, as well as Debian and Red Hat based Linux distributions
Software designed with the end user in mind to be easy to operate and to prevent the userbase from incorrectly using the software
Given a vision and specifications by the sponsor to produce and deploy the expected product
Provided documentations and gave presentations with the sponsor, professor, as well as team to detail and understand project progress
Used company resources for assistance and consulted professor, sponsor, and team on development validation, product specifications, and assistance
Worked with the sponsor Nicholas Edwards from the company TunnelVUE, the professor Shehenaz Shaik, and a team of four developers
Project was a semester long Senior Design Project orchastrated by Auburn University
Learned more about Operating Systems and Installer Development
Created design documentation for both other developers as well as users of the products being developed
Learned more about creating docker containers for WSL environments
Used the AvaloniaUI framework and learned more about C# development
Developed custom bash scripts with user interaction and self changing variables
Used various extensions in visual studio such as Avalonia for Visual Studio and Visual Studio Installer Projects
Expieremented with creating custom Linux package installers including Deb for debian systems as well as RPM for Red Hat Systems
Learned about Tunnel VUE's CoreVUE encryption method and the salting measures which are used for the ChatVUE project
This script displays a variety of options for managing git repositories and interacting with Git Hub pages
The program is designed to be easy to use and a way to save time by not having to remember or type lots of git commands
Learned how to develop Bash Scripts
Used scripting to alleviate repetitive tasks
Had to become familiar with the terminal to understand interaction with shell-based programs
Learned more about how git functions and the various stages that git offers
This script was designed for helping with Project 2 in COMP 3500: An Introduction to OS/161
This Script is to be used on Linux based machines
The script, when executed, will automatically configure, build, and launch the sys161 kernel utility for OS161
Learned how Makefile can be used to efficiently build and run packages
Preformed many tasks after a single trigger
Offered different options for building the OS/161 Kernel by using Makefile
Created to help solve equations for a math class I was taking
Used the math module extensively for this project
Preforms more operations than a simple quadratic calculator such as finding roots and factors
Learned to use Math for creating algorithms
Gained more experience with using the tkinter module
Preformed error checking by solving many math equations and then testing the results within the application
The scripts interact directly with the iTunes application to provide feedback
The media player script examines song and meta data and then converts it into a readable format
The application dynamically changes every second and is fully interactable
Learned how to use API's for gathering details on applications
Learned how to handle script execution differently to optimize for the script checking music status every second while music is playing
Had to use different signals such as checking for mute status as well as audio player output
Created with the assistance of BetterTouchTool
The scripts execute every time a Mac wakes from sleep
There is a randomizer, so the sound effects, visuals, and messages are different every time
Learned how to use scripting in conjunction with trigger on wake
Learned more about how to use custom resources and randomizers in the Apple Script language