E6: Reflecting on Assignment 3

16 Dec 2022

Briefly describe your system (e.g. A store selling Pokemon game cards)

My store sells custom keyboards and accessories to go along with them. For example, you can buy switches and keycaps to put on your custom keyboards that you can build, or you can purchase pre-build ones already.

Any notable shortcomings, bugs, problems, or additional features not implemented?

Overall I feel that my website has most of the features implemented. For example, the add to cart with buttons to change the quantity wanted, the nav bar dynamically changes after login, the errors pop up when entering invalid numbers, etc. One shortcoming though was that I did not have enough time to CSS my website, so functionally, it works pretty well, but it just doesn’t look the nicest because it took too long to get it to actually work.

Describe what you are most proud of about your system:

I think one of the things I am most proud about is either my nav bar or my cart. For my cart, it took me over 10 hours straight of coding to get the buttons to work correctly, and when I finally got it to work, it felt great. Another thing I was proud of was the nav bar. For some reason I was just very happy with the way it came out, with the drop down list and dynamically changing the list names on login and logout.

Describe what you are least happy with your system:

I am definitely least happy with how the css turned out. The website could have looked a lot better if it was styled correctly. That was really the main thing. The invoice and register page were hard to style easily as they were being printed on the server side so that it was easier to create the cookies there.

How was developing this assignment different than assignment #2

This was a bit harder as we had to implement cookies and sessions, which were very new to me. Calling and using cookies in different places in the code were a challenge to me, as you called them differently in the HTML file and in the server-side JS file.

When you ran into a problem, what did you do to address it?

When I ran into problems, I would first look to see where the problem would be originating from so that I would know where to start fixing it. I would take it step by step to see exactly at what point the code would break, so that I could fix it. Many of the problems took me countless hours to get through, it just took a lot of brainstorming on what the different ways the code could not be working.

Describe what worked well in doing this assignment?

Thinking of different ways to think was my point of view on how to solve the problems. I think this went well when I got stuck on a problem for hours, I would take a quick break to refresh my brain and look at the problem from a different perspective. That way, if it wasn’t working if I thought about it one way, maybe there would be a whole different approach to solving the problem.

Describe what did not work well in doing this assignment?

I think overthinking really slowed me down in the coding and debugging process, as I would repetitively do the same thing thinking that it would work because it made the most sense to me. But in reality, it wasn’t working for a reason, so I knew I had to think of another way of doing things.

What did you learn from doing this assignment?

Honestly, I learned a lot about how cookies and sessions work. I never really knew what cookies meant, even though I would hear about them all the time. For example, when entering some websites, they would ask you if saving cookies is okay, or if you wanted to clear your cookies, I never really knew what they meant by this. Now I know that really it’s saving your specific data, such as the time logged in or your username when logging in.

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

Like always, I would have tried to manage my time better so that I was able to produce a better looking website. Although I had many other exams that I had to study for, it was really hard to manage my time and study for those exams while also working on this code. But I would have put more effort into understanding how the code worked and coming at it with a clear mind, but honestly that was really challenging with all the things going on in the end of the semester.

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 spent about 25% of the time thinking about what and how to do things, about 15% of the time coding them, and about 60% of the time debugging and testing to see if my code actually worked.

Assign an estimated percentage on the amount each team member contributed to the assignment (including yourself) and explain briefly your rationale for the percentage breakdown. Be sure to include an overview of what specifically you and your partners contributed (e.g. “I worked on the security and my partner 1 worked on personalization”)

I did not work with any partners for this project.