E5: Reflecting on Assignment 2 Technical Essay

22 Nov 2022

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

Assignment 2 was an extension of Assignment 1 in that we were supposed to build off the webpage that we created in Assignment 1 and add a login and registration page. The login and registration page were meant to sign users in, track their activity, and only allow them to purchase items if they were registered. The assignment tested our knowledge of server-side processing and determining savvy ways to track users’ information from page to page. For more information about Assignment 2 click here!


2. What did you learn from this assignment?

Assignment 2 enabled me to learn more about how to track a user’s information from page to page. I learned about how to verify a user’s information through a validation loop and register data through server-side processing. I also learned that coding such a webpage is pretty straight forward for the majority of its code but it becomes difficult once you get into the minor details about what information to validate, tracking where you place your code, and how to keep a user’s information private.


3. 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 for this assignment so I completed 100% of the assignment.


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

Whenever I needed help, I asked my professor, Professor Port, for one-on-one meetings so he could help me sort through my code, find errors I made, and establish my plan for how I would accomplish certain tasks on my webpage. I found the one-on-one help very useful for when I was completing Assignment 2 because Professor Port catered directly to my needs. I also found that our sessions were speedier when I was able to pinpoint a list of issues or questions before we met so we could have an agenda to cover throughout our meeting. I also got help from one of my coworkers who is a CS PHD Candidate when I was trying to plan out my email validation portion of my website (total of about 40 min. total). The main areas that I needed help with was validating my users’ information, figuring out how to better store my data on my server, and determining how to use my query string data and transfer it from webpage to webpage as the user went from the store front to the login page and finally to the invoice page.


5. How was developing this assignment different than assignment #1?

This assignment was different than our previous one in that our code had to be very deliberate. I keep learning the same lesson repeatedly which is not overthinking my code. I tend to overthink how I should code components of my webpage only to go to a study help session and get presented with a much simpler less coding heavy version of what I was originally coding in the first place. I had a lot of unnecessary code that I wrote which I ended up redoing in the end. This assignment made me think more about where my information was going, what data to keep, and what data to get rid of. I definitely spent a lot more time thinking about what I wanted my program to do over how to code it on this assignment.


6. 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 spend about 60% of my time thinking about how to do something, 10% of my time actually writing code, and 20% of my time testing and debugging my project.


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

I think that my registration validation went well in this project. I understood my code well and felt equipped with the knowledge to correctly write code for what I wanted to do. I think my forms worked well as well because they were simple and did their job. Something that didn’t work as well was using a query string to get my user data from page to page so they would purchase correctly because I had to be very conscious about putting query info on each page and tracking my code well. I also had to make sure to keep my users’ information in the query string private so that no one could steal their information.


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

If I could go back in time, I would make better comments for my code so that when I went back, I would know exactly what I was doing when I wrote the piece of code. I also would’ve written my comments a bit different e.g. writing the purpose of the line of code and definitions for the functions and information I was using. With my current comments I only provided myself with definitions and not really the purpose for my code. I also would’ve organized my code a bit better so that I could find specific lines of code faster.