Programming

FPS in Early Prototyping - Unity, C#

Occasionally, while learning languages, I would cross paths with game development. Most of it was in unity, so when I decided to create my own game, I chose to continue with it out of familarity.
I envisioned the game as a midway point between classic Doom and early Halo. I felt as though that would limit my scope considerably, and it has. However, I primarily see this game as a learning tool that can force me into trying different parts of game development, such as sound design and pixel art animation. Some of early sprites can be found on the Art page.
Code and/or guided tour may be available upon request

This Portfolio - UI/UX, Publishing

I created this portfolio from designing to publishing over 2 years. Over this time, I've learned a lot about HTML, CSS, and Javascript that I've been able to apply to this site. Some of this was the specific tags and functions I've chosen to use, but a lot was the features I added or removed. You can see some of the changes in the Portfolio Prototype section, found below.
During my time creating Mueller Irrigation's farm database and Irrimap, I learned a lot about web publishing. I was able to bring this experience to this portfolio, as you can see. Even in the development of this site, I was able to learn more about web publishing, including creating emails with my chosen URL and sending them to my phone.
Code may be available upon request.

Irrimap - Python, Difficult Technology

Irrimap was created as a way to visualize evapotranspiration data from Google Earth Engine. The main difficulty with this was the lackluster documentation that was rapidly aging out. At one point, I was forced to switch the program from JavaScript to Python so I could get external weather data and authenticate correctly. This was due to Google changing their authorization workflow but not updating the documentation. Additionally, Python was the first language I learned, but hadn't touched it since so relearing it was a challenge.
In the end, this is probably my least favorite project, mainly due to certain concessions I was forced to make. Luckily, it works as expected, just not as hoped.
Guided tour may be available upon request.

Meuller Irrigation Farm Database - Full Stack Development, Linux, Server Setup

This project was the main component of my practicum. I was told to redesign their existing pen and paper database into a new MySQL database. Additionally, due to the lack of technical knowledge, I was also required to build them a UI frontend to interact with the database.
The development of this system required me to learn Meuller's systems and design iteratively. With each iteration, a previous assumption would be found incorrect, and had to be corrected. It forced me to juggle many languages, from PHP to MYSQL to CSS, and later to Python as I had started my next project.
Guided tour may be available upon request.

Paint App, Unfinished - C#, Ability to Quit

With this project, I wanted to create something akin to MS Paint, but finished that quickly. From there, I decided to add more features like resize and magic wand tools. After some minor problems, I took a step back to look at what I'd accomplished and decided it wasn't worth continuing.
A lot of times with side projects, and even parts of code, people can get too attached and keep banging their heads against the wall. A lot of times, it's better to rewrite something from scratch than keep chipping away at minor bugs which is a skill I've had to develop.
Code may be available upon request.

Portfolio Prototype - Iterative Designing, Response to Feedback

This image shows a prototype of this portfolio from when I was at Lethbridge Polytechnic. As seen, some features were cut for simplicity's sake, but a lot is the same. The dropdowns were part of a previous experiment that I changed to work dynamically with the HTML content, which was a lot of work, but I had very few places to use it so I was able to cut it.
Because this was a school project, I got a lot of feedback from my Professor that I was able to act upon. Most of it was design, and all of that was needed, but some of the changes I made on my own accord to fit with the more streamlined design. One of the more noticable ones is the color palette.
Code may be available upon request.

Merge Sort - JavaScript, Problem Solving

The creation of a merge sort was my attempt to understand O(n log n) time. When I started, I was attempting to recreate a quick sort but ended up with something more accurately resembling a merge sort.
This project demonstrates my problem solving and extrapolative reasoning skills. Throughout my education, and now career, I have been known to experiment. Projects like this help me to parse larger problems into smaller, simpler ones.
Code may be available upon request.