Thea’s Pantry

The Thea’s pantry project is a very interesting project since it involves Worcester State University itself and as students who are graduating, it is for us an opportunity to leave behind something this valuable that will serve the university and its users in the coming future. I read about the User stories, and I am extremely pleased on how well detailed and organized this section is. I loved to see the different parts that need to be updated in the Thea’s Pantry log entry. I also read about the technology that will be used in this project. Some of them are very familiar like git and gitlab. Some were introduced to me recently like MongoB, Docker and openAPI. I am curious to learn about all these technologies and put them into practice as they are important in the software field.

Technology.md · main · LibreFoodPantry / Client Solutions / Theas Pantry / Documentation · GitLab

UserStories.md · main · LibreFoodPantry / Client Solutions / Theas Pantry / Documentation · GitLab

https://gitlab.com/LibreFoodPantry/client-solutions/theas-pantry

From the blog CS@Worcester – Software Intellect by rkitenge91 and used with permission of the author. All other rights reserved by the author.

Set Up Task 3: LibreFoodPantry

After reading several sections on the LibreFoodPantry website, I found the Code of Conduct to be rather useful. It provides a very clear picture of what is expected and how things are handled in a simple, straightforward way. The page explains in detail what the goal is, what the community standards are, where they apply, how they are enforced, and how the violations are handled. I think it’s very important to understand and be familiar with the culture, values, and standards of the community before being a contributing member. I will try to visit this section every once in awhile to remind myself of what values and practices I should uphold when working on this project.

From the blog CS@Worcester – Fadi Akram by Fadi Akram and used with permission of the author. All other rights reserved by the author.

LibreFoodPantry

When reading through the LibreFoodPantry main page looking at the values, specifically the FOSSims, I saw something that intrigued which was Linus’s law and the saying “given enough eyeballs, all bugs are shallow”. This phrase indicates that you should not shy away from help when encountering bugs so that they can be fixed easier and quicker and to not end up like those who just bang their head on the wall for hours on end stuck. I chose this since I can relate to have been typically working on fixing bugs myself and spend hours stuck instead of seeking help in certain situations. This is useful to think about and to hopefully convince other people to seek help.

From the blog CS@Worcester – kbcoding by kennybui986 and used with permission of the author. All other rights reserved by the author.

Conventional Commits

When researching the “Thea’s Pantry” group on Gitlab I came across Conventional Commits. Conventional Commits is a system of writing commits that can be used for parsing by conventional keywords and formatting. This can be used to automatically generate CHANGELOGs and automate semantic versioning.

Conventional Commits is formatted as <type>[optional scope]: <description>. This creates a consistent format to write/read comments and can help you quickly find commits when searching for a specific commit. You also have the option to include a body and footers. These bodies and footers also have their own specific formatting to facilitate automated parsing. If convention is not followed commits can be squashed and reformatted upon merge by a project administrator.

From the blog CS@Worcester – Ryan Blog by rtrembley and used with permission of the author. All other rights reserved by the author.

Thea’s Pantry

While reading the documentation for Thea’s Pantry, I thought the User Stories section was really interesting. I think it is a valuable resource to have on hand while working on Thea’s Pantry since it gives a very clear description of how this software is intended to be used. This gives me a better idea of how the program should flow during use, and it especially helps me understand the difference between the responsibilities of a staff member and those of an administrator at the food pantry. I also thought it was interesting that only one guest was allowed into the pantry at a time; I did not know this previously.

From the blog CS@Worcester – Ciampa&#039;s Computer Science Blog by robiciampa and used with permission of the author. All other rights reserved by the author.

LibreFoodPantry

Something from the LibreFoodPantry’s website that I found interesting was the mission that is listed. This page states that LibreFoodPantry’s mission is to “expand a community of students and faculty across multiple institutions who believe software can be used to help society.” I really like that this mission is centered around bettering our community. I think a lot of modern software projects are focused on comercialization and proffit, and I don’t like that. A software can be a very powerful tool for any cause; I believe that softwares should be designed to help people. I appreciate the oppurtinity to work on a project that has a real impact on the community.

From the blog CS@Worcester – Ciampa&#039;s Computer Science Blog by robiciampa and used with permission of the author. All other rights reserved by the author.

Thea’s Pantry

Thea’s Pantry Client is an integrated software solution for the actual Thea’s Pantry that is created by its students at Worcester State University. While looking through the project on gitlab, what I found most interesting was architecture of the software. It was amazing to see all the features that already exist to make it work from the inventory system to the reporting system. There are so many pieces to each thing that make it all work such as in inventory system it has a CheckOutGuest, AddInventory, CheckInventory, InventoryBackend, InventoryEvents, and InventoryDb. The reporting feature also is an interesting part of it that we have not worked with yet, and they generate reports of the backend as well as guest info and the inventory.

Source: https://gitlab.com/LibreFoodPantry/client-solutions/theas-pantry

From the blog CS@Worcester – Life as a CS Student by Dylan Nguyen and used with permission of the author. All other rights reserved by the author.

Thea’s Pantry

After looking over the gitlab page about Thea’s Pantry, I was intrigued as I never have gone to a food pantry before and had wondered how this software was going work with a repository of food. The User Stories page described clearly how a guest interacts with the software and how it has a place in gathering the information necessary and recording what is taken from it. It also listed categories about specific donations as well as which values can be chosen for how the items were donated. I honestly didn’t quite know what to expect but this listing made it clear to me how the software was going to be used. I at first thought it was going to be more centralized around inventory management but it’s a bit clearer to me that it also records who used and donated to the service.

From the blog CS@Worcester – A Boolean Not An Or by Julion DeVincentis and used with permission of the author. All other rights reserved by the author.

LibreFoodPantry

LibreFoodPantry is a project that our community is working on not only as a way for students to learn but is also a humanitarian project to help others. What was nice that I discovered when looking through the “Values” of this project were the 16 FOSSisms that all educators should know. Not only are these useful for educators but also for us students as well. One of the things I found that stood out the most in this was, “FOSSism #11: It’s not what you know; it’s what you want to learn”. This piece of advice stands out as one where we should not look at the work we are about to do as just work, but a project where we can learn how to progress as futures Software Engineers.

Source: https://librefoodpantry.org/

From the blog CS@Worcester – Life as a CS Student by Dylan Nguyen and used with permission of the author. All other rights reserved by the author.

LibreFoodPantry

After reviewing and reading over the LibreFoodPantry’s main page I found a specific topic that settled a concern that I had about working on an open source project like this. In it’s values page it presents a list of ideals titled FOSSisms, where I found a particular one that I wasn’t expecting. This FOSSism covers how a student like I should handle working on the project and worrying about making mistakes or asking permission to try working with anything. I know that this semester I’ll have tasks already set aside that I need to work on but actually doing it and making a mistake that could break a part of the software itself was overly present on my mind. This FOSSism reassured me that I shouldn’t be too concerned about making that mistake and rather to ask for forgiveness instead of first asking for permission.

From the blog CS@Worcester – A Boolean Not An Or by Julion DeVincentis and used with permission of the author. All other rights reserved by the author.