Standup Notes Week 4 - 220103JavaFS/standup-amplifire-mamba GitHub Wiki

1/24/22

Bobby - (Over the weekend) Met with Mahad over the weekend and we finished creating our database for Project1. Furthermore, we did a little work on fleshing out what some of our backend model classes would look like (in terms of fields and handlers in the controller layer that will manipulate these fields). I also did some studying for the QC that we have at 2 PM today. (Today) I'm going to take the SQL quiz that was posted last week to cap of my studying that I did for QC. After the workday I'm going to try and get a little work done for the front end of Project1.

Zach - Over the weekend I did some studying for the QC interview today. Today, while everyone is doing their QC interviews I will work on the project with Ivo. Hopefully we will define what each of our responsibilities are. After work I will probably continue working on the project so Ivo and I can hopefully finish the project with time to spare.

Ivo - Over the weekend I was able only to review some of the lectures material. I created rough SQL script for project one. As a whole I wasted my time and probably will regret that later as the project 1 deadline looms.

Mahad - Over the weekend, I fixed the functionalities that broke and were missing, such as withdrawal and Savings account. Unfortunately, my IntelliJ became corrupted and so I had to reinstall it. Thereafter, I built the database and met with Bobby and we compared our databases and implemented the best of both databases. Then I studied for QC for today, which I hope to do really well on. I am also looking forward to learning about testing and seeing how it can improve my coding efficiency.

Ian - Over the weekend I put together an outline of the 3 layered architecture for project 1. This was made much easier by my project member Mike who made the database and Jessie will be working on the Frontend. I filled my outline with methods from controller to DAO. Today I, as I understand, it we will be learning out to make tests. I plan absorbing the information from lecture then working more on the project.

1/25/22

Ivo - Yesterday I was caught by surprise by the QC. Turned out I had forgotten how to use the Scanner and lost a lot of time experimenting with how to read the inputs. In the evening I tried reviewing the testing procedures, introduced during the lecture that day. Can't say I feel very comfortable with implementing TDD. Given that for project1 the service and repo layers must be implemented with TDD - there are some interesting times ahead!

Zach - Yesterday after lectures I took the QC assessments and for the most part, I didn't have TOO much trouble with it. The Java assessment was pretty easy but the SQL one was pretty irritating. After that I did a little work on the project. I designed some of the back end and I created a simple kanban board to keep me organized.

Bobby - Yesterday I listened to some lectures and took the assessment from QC. I really enjoyed the Java portion, however, the SQL portion gave me some issues. One of the biggest issues I ran into was not knowing certain functions like how to round numbers or get only certain characters from a string. I remember hearing that we weren't supposed to Google anything and I couldn't find these functions on the website given to us to use so I had to make due. I was able to get a good amount of work done putting the "bones" together for our Project1 back end.+

Mahad - Yesterday QC had us take some assessments on Java and PostgreSQL. I feel as though I had aced the SQL portion, and one of the Java problems. However, the first Java problem really stumped me because I had a tough time trying to interpret the directions, which gave me limited time to pursue the third problem. Today I am looking forward the my one-on-one with Tim because I have done a lot of studying of week 2 & 3 materials. I am also looking forward to doing the paired programming with Bobby today because there is a lot I can learn from him.

Ian - Yesterday the QC left me feeling like I had a lot more to learn, there were commands that I needed but didn't know, but I did leave feeling confident that I understood the correct methods if not the implementation. Today I found out that I was incorrectly connected to my project's GitHub, so I spent the day working on understanding GitHub and trying to connect to the project. My project member Mike's three layered architecture outline had a better fleshed out DAO so we decided to use his as the groundwork for our project. But I had a better fleshed out controller and service layer, so I'm hoping that that can be cleanly integrated with his foundation.

1/26/22

Bobby Pair-programming partner(s): Mahad Time spent as navigator: Not much time during the session (Mahad was having git troubles and wasn't able to pull the repository) Time spent as pilot: Most of the coding session (I had to do most of the coding because of git troubles) What did you work on: Created tests for two classes in our service layer and then created the logic for those classes to pass the tests What did you learn as a navigator: Unfortunately didn't have much time as the navigator What did you learn as a pilot: I found that saying out loud what I was doing was very helpful for actually deciding if what I was doing was necessary. Do you believe that this session was useful for your project? Why or why not: Yes it was very helpful, figuring out good tests was much easier as a team.

Mahad - Pair-programming partner(s): Bobby Time spent as navigator: Most of the time because of the fact that my gradle or IDE seemed to be corrupted (was resolved afterwards when I was able to reinstall IntelliJ). Time spent as pilot: None because Gradle was not able to build on my IDE. What did you work on: My partner and I worked on the Unit testing of our Project1. We had a very successful testing session and were able to test the logic in our Repos and Controller layers. What did you learn as a navigator: I learned a whole lot from Bobby because he had more of an understanding of the backend where I was able to learn from him. Besides that, we were able to point out tests that the other may not have been thinking of and was able to give and take, making the code more efficient. What did you learn as a pilot: I was not able to be a pilot because of the reason above. Do you believe that this session was useful for your project? Why or why not: This session was really useful. Before this, I always thought that coding alone is so much better because your able to work with own logic without worrying about mixing, but I seen that having a pilot and navigator just allows you to correct your mistakes while coding, rather than having to spend time trying to debug your code after the fact.

Zach - Time spent as navigator: ~1.5 hours Time spent as pilot: ~1.5 hours What did you work on: I created all the classes that Ivo and I thought we would need, but I didn't implement any methods. It was mostly just to "outline" the project and help keep us organized. I also implemented some initial JUnit tests for LoginService, LoginDAO, and RequestDAO. What did you learn as a navigator: Since I was able to take a step back and watch Ivo code, I learned a lot about how the code should be structured. Seeing Ivo implement the DAO layer also helped cement the concepts of SQL and connect to the database. What did you learn as a pilot: I learned how to implement JUnit tests and I got practical experience creating a webpage and connecting it to my Java code/server. Do you believe that this session was useful for your project? Why or why not: I learned that Ivo and I are good at very different things so having one person code and the other person guide helped code become more robust than it would have been with just one of us. It also helped us learn programming concepts that we were having trouble with.

Ian - Pair-programming partner(s): Mike, Jessie Time spent as navigator: 3 hours, we spent the entire morning watching Mike code and it was only after lunch that I suggested that we properly switch roles, and push our work to GitHub every half hour so that we could properly implement navigator/pilot. Time spent as pilot: 0 hours. After lunch I tried to become pilot but it turned out that I was connected to git hub improperly. What did you work on: Getting my GitHub working. What did you learn as a navigator: I felt that I wasn't very helpful as a navigator because I hadn't gone over how to write tests, so I wasn't able to help with navigation. What did you learn as a pilot: I wasn't able to pilot. Do you believe that this session was useful for your project? Why or why not: I don't think it was useful to me, Mike did all the work so progress was made. But in terms of my learning it was a missed opportunity.

1/27/2022 Ivo - Yesterday together with Zach we created the ServicesRequest layer and implemented the initial testing functionality for it. After lectures I reviewed some Git tutorials as I am having trouble understanding how to resolve merge conflicts.

Zach - Between lectures Ivo and I got some more work done on the project. Ivo implemented some tests since he was having some trouble with those and I guided him which allowed me to learn more about them as well. After work, I installed and set up Docker for the lectures/demos today.

Bobby - (Yesterday) Finally got some good work done on the front end of Project1. Create the html and js files for the login page, which also has complete functionality in the controller and service layers of the backend. Also created model classes needed for the Reimbursements themselves. Started writing some unit tests for the ReimbursementService class. (Today) Will hopefully finish the service layer and can start work on DAO layers tests and logic.

Ian - yesterday I worked on the DAO and test layers. I implemented the userDAO and wrote test for it. Today I plan on absorbing the contents of lecture and write tests for the Login Service on Project 1. This will be a good opportunity for me to learn about mockito.

Mahad - Yesterday me and my partner worked on the front-end of our Project1. We've constructed a good foundation of webpages to build off of. Today, I hope to do some testing and see what new functionalities Bobby has added to the back end so far.

1/28/2022

Ivo - Yesterday I attended the lectures and demos on Docker containers and EC2. My container builds were very, very slow and I was not able to do all the procedures as Tim was demonstrating them. I am looking forward to the weekend to finally get some work done on project1 - so far Zach has carried the whole burden.

Bobby - (Yesterday) Figured it would be best to finish the service layer during our next group coding session so decided to get a jump on controller layer logic in the back end. Also had an issue in the front end with submitting form data. We had initially put submit buttons within the form tags of the html page so decided to move buttons to the outside of the form elements to handle submission. (Today) Going to listen to lectures and hopefully get some work in for the Project.

Zach - Yesterday after the lectures I worked more on the front end of my project. I had issues with the browser rejecting my fetch request because of CORS policies. I fixed it by including a few select headers in the context object in my controller. I also incorporated a CSS, primarily to make certain HTML elements hidden when the web page first starts up. Going into the weekend, I'm going to work on the project with Ivo.

Ian - Yesterday I wrote the test for the Login Service. the tests failed, but it seems to be from a nullPointerException who trying to retrieve and decrypt the password. I'm unfamiliar with the encryption service that was used so I'm taking it back to my group members who know better, for advice. Today and over the weekend I plan on getting that bug worked out, asking my project members for feedback on my service layer, then working on the controller layer.

Mahad - Yesterday after looking at the Mockito testing done in our project1, I realized I wanted to learn more about Mocking and testing to be able to utilize it more efficiently. Also, I was able to resolve the Git issues I was having and corruption with my IDE so hopefully, if we are given time today to work on our projects, I will be able to be a pilot and actually implement some mocking and testing.