Category Archives: CS-448

Andrew Lam’s little blog 2023-01-22 01:32:00

I read both about the LibreFoodPantry main page and the items from Thea’s Pantry.

I chose one exciting for LibreFoodPantry and expect to find information on the organization’s mission, values, and code of conduct, as well as how to get involved and make donations. One exciting aspect of the organization may be its use and promotion of Free and Open-Source Software (FOSS) and the values of freedom, community, and transparency. I write about it, there are many exciting pieces, but I chose one of them because it has the organization’s commitment to open collaboration and its belief in the power of community-driven development.

I decided on one vital part from Thea’s Pantry; one might expect to find a web application that allows clients to order food and other necessities and for staff to manage those orders. One exciting aspect of Thea’s Pantry might be its Agile software development methodology. The agile methodology emphasizes collaboration, flexibility, and rapid iteration, allowing for efficient and effective development and management of the application to run correctly. Also, I write about it as an exciting piece because of the organization’s commitment to staying current with industry best practices and delivering a high-quality product to its clients.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

Andrew Lam’s little blog 2023-01-22 00:32:00

I read both about the LibreFoodPantry main page and the items from Thea’s Pantry.

I chose one exciting for LibreFoodPantry and expect to find information on the organization’s mission, values, and code of conduct, as well as how to get involved and make donations. One exciting aspect of the organization may be its use and promotion of Free and Open-Source Software (FOSS) and the values of freedom, community, and transparency. I write about it, there are many exciting pieces, but I chose one of them because it has the organization’s commitment to open collaboration and its belief in the power of community-driven development.

I decided on one vital part from Thea’s Pantry; one might expect to find a web application that allows clients to order food and other necessities and for staff to manage those orders. One exciting aspect of Thea’s Pantry might be its Agile software development methodology. The agile methodology emphasizes collaboration, flexibility, and rapid iteration, allowing for efficient and effective development and management of the application to run correctly. Also, I write about it as an exciting piece because of the organization’s commitment to staying current with industry best practices and delivering a high-quality product to its clients.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

Andrew Lam’s little blog 2023-01-22 00:32:00

I read both about the LibreFoodPantry main page and the items from Thea’s Pantry.

I chose one exciting for LibreFoodPantry and expect to find information on the organization’s mission, values, and code of conduct, as well as how to get involved and make donations. One exciting aspect of the organization may be its use and promotion of Free and Open-Source Software (FOSS) and the values of freedom, community, and transparency. I write about it, there are many exciting pieces, but I chose one of them because it has the organization’s commitment to open collaboration and its belief in the power of community-driven development.

I decided on one vital part from Thea’s Pantry; one might expect to find a web application that allows clients to order food and other necessities and for staff to manage those orders. One exciting aspect of Thea’s Pantry might be its Agile software development methodology. The agile methodology emphasizes collaboration, flexibility, and rapid iteration, allowing for efficient and effective development and management of the application to run correctly. Also, I write about it as an exciting piece because of the organization’s commitment to staying current with industry best practices and delivering a high-quality product to its clients.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

Andrew Lam’s little blog 2023-01-22 01:32:00

I read both about the LibreFoodPantry main page and the items from Thea’s Pantry.

I chose one exciting for LibreFoodPantry and expect to find information on the organization’s mission, values, and code of conduct, as well as how to get involved and make donations. One exciting aspect of the organization may be its use and promotion of Free and Open-Source Software (FOSS) and the values of freedom, community, and transparency. I write about it, there are many exciting pieces, but I chose one of them because it has the organization’s commitment to open collaboration and its belief in the power of community-driven development.

I decided on one vital part from Thea’s Pantry; one might expect to find a web application that allows clients to order food and other necessities and for staff to manage those orders. One exciting aspect of Thea’s Pantry might be its Agile software development methodology. The agile methodology emphasizes collaboration, flexibility, and rapid iteration, allowing for efficient and effective development and management of the application to run correctly. Also, I write about it as an exciting piece because of the organization’s commitment to staying current with industry best practices and delivering a high-quality product to its clients.

From the blog Andrew Lam’s little blog by Andrew Lam and used with permission of the author. All other rights reserved by the author.

A Peek Into LibreFoodPantry & Theas Pantry

Before working on anything for LibreFoodPantry, I needed to read up on the project. LibreFoodPantry values FOSSisms: https://opensource.com/education/14/6/16-foss-principles-for-educators. I thought this was an interesting read, especially because I am new to open source culture. It discusses some values and beliefs, one of them being that if something didn’t happen publicly, then it didn’t happen. This would make it easier for people to be able to see what’s being done and join, and documenting things helps keep people up-to-date on such a large project. Some FOSSisms also mention that students’ changes aren’t likely to completely mess up a project because of versioning and branches exist. This is reassuring that something I do for the project, even something small, is still helpful, and changes I make would not be entirely damaging.

I read up on Theas Pantry at https://gitlab.com/LibreFoodPantry/client-solutions/theas-pantry/documentation/-/blob/main/README.md. An interesting component of information from those files is the User Stories. I wanted to highlight this because it is helpful in helping us understand the flow of how signing in would work for different people, and any restrictions there may be. This gives us a better idea of the coding. For example, we know to code for a blank registration form appearing if the visiting guest’s WSU ID has not been swiped at the pantry before. We would also know to code for the guest’s current information to be displayed if they’ve visited before. On the topic of restrictions, the user story tells us that only one guest is allowed in the pantry at a time, so we know to maybe only code for up to one person to be signed in at a time, and they’d need to sign/check out before another guest could.

From the blog CS@Worcester – CS With Sarah by Sarah T and used with permission of the author. All other rights reserved by the author.

Set Up Task #3

One of the things I found interesting about the LibreFoodPantry’s page was their mission. I found it amazing reading about how they are both helping aspiring computer science individuals while also supporting food pantries with free software to help run the organization. The opportunity to have a community like this available to individuals who want to learn more about computer science is helpful to promote strong networks between individuals and create a support group for individuals who need more advanced help when they become stuck on a topic. In regards to Thea’s Food Pantry, I found the User Stories page to be quite interesting and helpful. Being able to see how the program works, and how a user would navigate through the program helps with the software designer working on the software be able to see the perspective from the user’s point of view, and encourages their thought process to create more features that would help the user. If an individual who was new to computer science and was reading the User Stories page, they would be able to compare what is happening within the user stories and compare that to the code, and be able to see how code can produce different features.

From the blog CS@Worcester – Noelan Chabot's Blog by nchabot1 and used with permission of the author. All other rights reserved by the author.

“Record What You Learn”

From the blog cs@worcester – Dahwal Dev by Dahwal Charles and used with permission of the author. All other rights reserved by the author.

“Share What You Learn”

It is essential to know when to fail. So, we start learning when we fail. In our journey, we experience these expansion failures. This template explains how to speed up the sharing of the knowledge we have gathered and pass it on to people. 

When I read this pattern, we were working as a team, and we agreed. Communication is the key. Communicating our knowledge can make a difference. Always be supportive and help each other. As a team, they are responsible for all tasks. Why are you selfish about what you know? After all, it won’t help anyone, and it won’t help you either. The problem is that you must rely upon others to catch up. And another point is that they may not like or appreciate if you are a trainee and if you can influence your team or individual based on your experience, so knowing I can’t do that. Therefore, the model shows that you or someone else can try to save what you have learned along the way only if you need it for future purposes.

For this pattern, I disagree on the part on whether it may not be appreciated towards others. But the problem is that I do not know why it would be a problem as people can be mature enough to give feedback on the person taking their time to share what may be a discovery for others. They can always have the option to not accept the knowledge and do, however. Should not be hindered from one or more person opinion. 

Believe that it is important to share the knowledge acquired. knowledge is power. Also, teaching this knowledge is a great and powerful collaborative tool that we must learn ourselves. I know as a software developer; I will face these challenges and must make the right choices for the best of the team I work with or for myself to perfect my work ethic. People may not like what others have to say and may not do it the way you expected. But pay more attention to this cause. I practice recording everything I learn and realize that delivery is important, or I can quickly contact someone in a situation like this.

From the blog cs@worcester – Dahwal Dev by Dahwal Charles and used with permission of the author. All other rights reserved by the author.

Find Mentors

Summary:

Find Mentors pattern is about asking for help while exploring the unknown. Every time we decide to take a new path – learn a new language, we do not know what is in store for us and therefore have no clue as to how deal with problems that we might face. The pattern recognizes that as new apprentice we will need help facing these problems and in reaching our goal.

The solution pattern provides is to learn under a master craftsman in the field of your choosing – a mentor. The pattern also realizes that as a novice it is difficult to identify a true master craftsman and therefore during the process of acquiring the new skill we will be guided by a number of mentors with diverse levels of mastery. The pattern states that it might be easy to find authors, bloggers, professional speakers, and developers in computer science field. However, there are two problems; first, they might not be interested in mentoring; Second, asking someone to be your mentor can be very intimidating. The important point pattern makes here is to have determination and remember that the risk of rejection is very low compared to huge opportunities having a mentor can provide.

The pattern also warns us about blindly following someone. We need to keep our eyes open to the mentor’s weakness and resist the temptation to believe everything they say. No one knows everything about everything. Therefore, we need to keep finding other master craftsman and keep polishing our skills.

Why I choose this?

Computer science is a very difficult field to begin with and then on top of it – it is an ever-evolving field. The amount of knowledge available is immeasurable. The pattern ‘Reading List’ helps us organize the books we need to read, which as we all know does not give practical explanation, real world connections or real time feedback. Moreover, to start our reading list and even to make sure that we are reading the correct books – we need to find someone we can trust – someone like a mentor.

Over the last four years I have been able to find a number of mentors. They have ranged from professors to my peers, family and friends to people in slack and discord communities. It has been an amazing experience. I have learned from them and with them.

From the blog CS@worcester – Towards Tech by murtazan and used with permission of the author. All other rights reserved by the author.

Learn How You Fail

Summary:

Those who don’t learn from their past mistakes, are doomed to repeat it. ‘Learn how you fail’ pattern states that failure is an inevitable part of any learning process. And if we have not experienced failure than we are either not pushing ourselves to our limit or we are making a grave mistake of ignoring our faults. The pattern provides a very clear and concise solution, self- assessment. We need to identify and be self-aware of patterns, conditions, habits, and various behaviors that resulted in failure. The pattern also points that once we are conscious of our faults, we are given an opportunity to fix them. It’s like the saying,’ the first step to any solution is recognizing that there is a problem.’ The pattern also lets us know that accurate self-assessment can help us define our limitations. Pattern lets us know that its okay to not excel at everything and accepting these limitations forces us to rid ourselves of all the distractions and reprioritize our goals.

Why I chose this pattern?

To quote Thomas Edison one more time, “I have not failed, I’ve just found 10,000 ways that won’t work.” This is a very powerful quote because if we don’t remember which road is incorrect, we might very well end up drowning.

‘Learn how you fail’ fits in perfectly after ‘breakable toys’, ‘Practice, Practice, Practice…’ and ‘Record what you learn’. “Armed with that self-knowledge…you allow yourself the choice between working to fix these problems or cutting your losses.” This is a very powerful sentence from the pattern. I have always been very self-aware of my limitations and therefore had my courses for the four years of my college well planned. Unfortunately, due to a fractured foot and a death in the family, I was operating at a bare minimum of my normal capacity. After a long and hard self-evaluating process, I concluded that I will not be able to finish both my capstone courses and even if I do, I will only be doing my bare minimum to pass the course and not for the learning experience. At this point, I decided to cut my losses- drop one of the capstone and do my best in the other one.

From the blog CS@worcester – Towards Tech by murtazan and used with permission of the author. All other rights reserved by the author.