Project
Age of Analysis
Age of Empire IV Real Time Strategy Game Planning & Reviewing Toolset
Ongoing
APIGUITestingPyQt
This project rose around wanting to speed up a custom drafting process that was way too long beforehand. I decided I wanted to create an application that would pull the API from the website we were using already directly to skip having to jump around different applications entering duplicate information or searching for bad data.
The basic premise of the application was to allow for randomising or picking booster packs and drafting through stages of picking and discarding until the user has gone through 40 packs in total. This ended up increasing the speed of drafting a deck by 50% depending on the experience of the drafter. Further on this would also directly export into the application were the game is played which was YGO Omega allowing for an easy import and start of a game.
This was built through PyQt6 on python through various dialog's and windows fetching data from the API and caching for future use. Some modifications of data was needed in order to allow for cleanly integrating data into the application.
Due to having to use linguistic data I ended up having to build a parser to pre-analyse a bunch of card descriptions in order to create correct search descriptions as a mechanic of drafting allowed for selecting cards that were mentioned in card description.
My concept around this was to build an application in the quickest time possible and try challenge myself on speed of execution as it was a relatively simple project in the grand scheme of things, but I ended up building technical debt here due to the relative low amount of planning done beforehand.
Some side effects from this were felt as I added testing fairly late into development which brought impacted QA from having critical errors and each user having a different OS setup which interacted differently with the application.
In future projects I would probably plan even more as it would required me to refactor quiet a lot during the process wasting time along the way. Working on critical design implementation when doing full ~12h days consecutively also lead to a lot of smaller mistakes slowing down the process further more. This compounded and lead to debugging slowdown which brought down development speed as a whole.
PythonQt