Category Archives: Spring 2020

Developing for LFP Again: First Sprint Retrospective

For over the past month I have been working as a member of the UpdateGuest team as part of developing for the LibreFoodPantry community. This blog post is a retrospective for the first sprint our team had. During this first sprint our team focused on setting up the UpdateGuest service and beginning the research into the tools we want to use to implement this service.

The issues that I was assigned to work on for this first sprint mostly focused on figuring out what we needed from other teams for the UpdateGuest service to function and what information the UpdateGuest service needs to store and to provide for other services under the VisitModule.

Specifically looking at the work I did this sprint:

The first issue I worked on was determining what data fields UpdateGuest would store, this was relatively simple and we decided that our service would mostly be using the fields the RegisterGuest team was storing since our service pulls guest data from theirs.

The second issue I worked on was a quick one creating a .gitignore file for one of our projects.

The third issue I worked on was determining the endpoints UpdateGuest needed from RegisterGuest to be able to get data from their service, this was solved quickly as the RegisterGuest team posted an issue where they listed all of the endpoints their service would have and this was all we needed.

The last issue I solved was what endpoints UpdateGuest needed to create for other services to use (along with our own), this became a discussion on many things, mostly with our team and the RegisterGuest team, to coordinate the endpoints and data they needed from us and how to format the endpoints and the data we are sending back and forth, but also how our service functions in general.

Finally, I helped to discuss and merge the creation of the Angular app for the UpdateGuestWebUI project.

I think that during this first sprint that our team did well. We successfully completed nearly all of the issues that we initially proposed to work on at the beginning of the sprint and even managed to create a couple of new ones and pull some additional issues from the backlog that were completed. Our pacing and completion of issues was mostly on track with the weighting system we used when creating the issues during sprint planning, although this might need some refining. We had good meetings in class where we all talked about what we were working on and we resolved any issues or questions that were ongoing with our work. We also used GitLab effectively to coordinate all of this work and document the different discussions and work as it was ongoing throughout the sprint.

I think that some things could be improved. I think that we could all try talking and communicating a bit more both in-class during our sprint meetings and outside of class either on issues on GitLab or on Discord. From Dr. Wurst’s suggestion I think we should establish some working policies for the rest of the semester’s sprints, especially about communication, but also when work should be done on the project. I think this is necessary so that others have time to contribute and interact on other group member’s issues and work before class meetings, so we are better prepared to discuss them in-class. I think specifically we need to define a team policy of replying to comments on GitLab or Discord when someone directly mentions an individual or the whole team asking for input that helps to solve or facilitate an issue.

Individually I think that I need to improve on my own communication skills and in helping facilitating team meetings in-class. Most importantly, I think that I need to get better at letting others talk and understanding the points they are making, especially if their opinions or solutions differ from my own, before I comment on them. Additionally, I think I need to get better at articulating my explanations of solutions and trying to not sound condescending while doing this. I also think that I could improve on my response time when directly mentioned on GitLab on issues.

Overall, I am excited to be working on a LibreFoodPantry project again and look forward to the remaining sprints as we continue developing our services this semester.

From the blog CS@Worcester – Chris' Computer Science Blog by cradkowski and used with permission of the author. All other rights reserved by the author.

Beginning Apprenticeship Patterns

This weekend I have begun reading a fascinating book called Apprenticeship Patterns by Adewale Oshineye and Dave Hoover as part of my software development capstone class.

As I was reading through the first chapter, my initial impressions were this book would be helpful but I found it surprising that the authors state there is an actual “need” for books such as this one in order to be successful as new software developers. Before reading this, I was sort of under the impression that entry level positions would be more friendly to new developers with other more experienced developers helping you along the way.  I also found the quote from Pete McBreen to be rather surprising too, I never thought there was an “abundance” of developers, as most articles you read tend to give off the impression there isn’t enough software developers. This first chapter and the way this book is framed in the idea of software development being an apprenticeship has certainly begun to change the way I am thinking about the field and how its not just a job but a lifelong journey.

This section from the first chapter also has begun to change my thinking in how I view my early jobs in software development. I never really thought of the first job you have as a developer in terms of focusing and learning for yourself, I have always thought of it as starting position and performing a task for a company, but I do like this idea of “selfishness” in the beginning.

Chapter 2 seems like a good chapter to start with in this book and will be where I begin with reading and learning about the various patterns. I particularly like the idea of learning how to sort of reset yourself to be able to learn new information from others who are more experienced than you. I find this chapter’s introduction to be especially relatable as in learning I strongly prefer to listen rather than talk so I think chapter will have some good patterns to learn from to further strengthen my learning skills as a listener.

I am also interested in reading Chapter 3, as I find the story of Dave very relatable with having only a small amount of knowledge at the beginning and finding it daunting to know there are others who know so much more than you and how to learn from these people, especially during the beginning of your career.

I want to read Chapter 4 as I agree with the message and want to learn how to strive to continuously improve as a developer instead of becoming complacent and satisfied with the current knowledge of a skill.

Finally, I want to examine Chapter 6, especially with the idea of learning more by reading books and how to do this with regards to software development. In particular, I hope the patterns in this chapter helps elaborate how to find the time and motivation to do so when it is no longer “assigned reading”.

Overall, I am excited to begin diving into the patterns in this book, particularly the ones in the earlier chapters as these seem like they will be the most helpful to me right now with where I am as a developer.

From the blog CS@Worcester – Chris' Computer Science Blog by cradkowski and used with permission of the author. All other rights reserved by the author.

Refamiliarizing Myself with LibreFoodPantry

After reviewing the various links posted on the main LibreFoodPantry website I think the most interesting item to me was the “What’s New” page. I really like the concept of this page and as someone who has been following the project for the past couple of months primarily through Discord notifications, I think it is extremely useful to have a page on the main website that highlights important changes in plain text versus a bot posting GitLab events through Discord. I am a bit surprised there isn’t more on this page yet, given the many new changes to the organization of projects I saw yesterday in the first CS-448 class. I also wonder how this page is different from the announcements channel in the Discord server.

From the blog CS@Worcester – Chris' Computer Science Blog by cradkowski and used with permission of the author. All other rights reserved by the author.

Beginning CS-448

This week is the beginning of the spring 2020 semester and the last course of the software development concentration, CS-448. I am excited to finally be working as a developer on one of the LibreFoodPantry projects and can’t wait to get started!

From the blog CS@Worcester – Chris' Computer Science Blog by cradkowski and used with permission of the author. All other rights reserved by the author.