E5: Reflecting on Assignment 2 Technical Essay

06 Dec 2023

Provide a brief introduction to the assignment along with a link to this page for further details

Assignment 2 was a continuation of our Assignment 1 store that mostly focused on keeping track of users and ensuring that their information could be properly stored and accessed. This was done with the creation of new user registration, as well as allowing users to login using their newly created account. Of course, we had to make sure that valid information was being used to register/login, which made this assignment even more challenging. Refer to the assignment 2 overview here.

What did you learn from this assignment?

I learned lots about input validations and especially more regarding manipulation of the query string. This assignment truly prepared me for assignment 3 in order to appreciate the use of sessions and cookies to make the management of the query string much easier.

Did you work with a partner? Assign an estimated percentage on the amount each team member contributed to the assignment (including yourself).

I did not work with a partner.

How did you get help when you needed it? What did you need help with?

Similar to last assignment, I met with Dan to help with large problems in my assignment, and relied on online resources to fix smaller bugs within my code. The biggest challenge that I faced within this assignment was trying to keep the query string intact within each page of my website. Each time a form was submitted or a page was redirected, I had to make sure to attach and save the query string with the product quantities, in order for my invoice to successfully display.

How was developing this assignment different than assignment #1?

Once again, this assignment was more focused on input validation and checking values inputted by the user to the values stored on our server. This assignment did not value the creation of unique pages and items as much as assignment 1, but rather focused on the internal functioning of our website.

Estimate the % of time you spent (a) thinking about how to do something, (b) writing code (but do not include testing, (c) testing and debugging

I would say I spent about 30% thinking, 25% writing, and a large chunk ~ 55% testing and debugging.

Describe what worked well with this project? What did not work well?

Although I was successfully able to pass the query string with the product quantities to the invoice, whenever I attempted to do small changes such as making the forms sticky, the query string would get destroyed and the invoice would not properly load.

If you could go back in time and do things differently, what would you do differently?

I would spend more time getting help on understanding each individual action within my code for the manipuation of the query string, as at times, I had to “hard code” certain values into my query string in order to pull the values. As a result, there were certain errors and bugs that resulted from attempting to add more to the query string, which resulted in my entire invoice not being able to display.