At a certain point in life, you start to notice a pattern. Older individuals often tell you, “Don’t worry, it will be over before you notice, so try to enjoy it.” People told this to me when I started High School, and I was complaining about its hardships, and they said the same phrase again when they caught me complaining about College. I always seem to learn my lesson a little too late, but luckily this time I caught it at the right moment. This last sprint on one of my last college classes was nothing short of enjoying my time surrounded by good teammates and working on a field that I became familiar with.
In the earlier sprints, we were caught off guard by what we had to do. This sprint, however, we had a clear vision of what needed to happen. All that was left was a little push.
Our inventory system was almost done by the end of the second sprint. We needed to add some final touches. We also had to clean up the code so that it would be presentable for future teams. After taking some opinions into consideration, we decided to add a few more features to it so that it would be overall complete for use, even for certain items that were not part of the Food Data Central Database. Playing around with adding new items to the back end and creating the necessary front-end infrastructure to do so the past sprints had me equipped with enough skills and knowledge to implement this feature seamlessly and tirelessly. Adding a few new modals after the scanned UPC was not found on the FDC database was not an issue as it would be the same procedure I used in the last sprint to populate the back end with new items. What was tiring at the time was having to manually input every attribute of the new item each time it was scanned. The temporary workaround for that issue was to cache the data to the local machine memory the first time an unidentified item was scanned. By doing so, every other instance that particular UPC code would be scanned again the attribute sections would already be populated with the previous input. This, however, was a temporary solution to the problem, as it could be an issue when the Web App is used in the future. If the same application is run on a different machine, it would not recognize those items as the cached memory for that machine would be null, and if by some means the cached memory were to be cleared using developer tools we would still find ourselves with items whose attributes would need to be scanned again.
Another feature added to the project this sprint was the sorting of different attributes. A simple sorting function which sorts a populated list based on their values and letters was added to the database file. Appointing this function as an “onClick” to the attribute table could sort the population of the table in a descending or ascending order of values for integers, and prioritizes the first letter of the category and sorts them alphabetically for strings.
Last commit done to the project side branch before merging to main:
https://gitlab.com/LibreFoodPantry/client-solutions/theas-pantry/inventorysystem-culling/inventorybackend/-/commit/9ecee33738a922be4f200ba106064a1aad6f40a6
In Apprenticeship Patterns, the “Familiar Tools” pattern emphasizes the importance of mastering your environment—whether it’s your editor, command-line interface, or even your IDE. These tools are your instruments, and just like a musician, your fluency with them can either make your job seamless or frustrating. My tool for this sprint was my familiarity with the system that we had created previously, and the basic functions I had learned on my earlier classes. As I was searching for libraries to create the sorting and this pattern reminded me to stop jumping from tool to tool but instead double down on the ones I have used the most. The end result was nothing glamorous, but it does speak for itself. Less friction and more flow.
In the end, we reached our goals, but the feeling of satisfaction continues to be bittersweet because for some of us, it was the last project before graduation. As we now go on different paths, this project will link us to the good times we had working together, and to remind us to not be sad because its over, but to be happy because it happened.
With that, I conclude this journey.
Ano, over and out.
From the blog CS@Worcester – Anairdo's WSU Computer Science Blog by anairdoduri and used with permission of the author. All other rights reserved by the author.