E5 Reflecting on Assignment 2 Technical Essay
01 Dec 2020
- Provide a brief introduction to the assignment along with a link to this page for further details
— In this Technical Essay, I will talk about Assignment 2. Assignment 2 is about upgrading our Assignment 1 website by adding user login and registration forms before getting to the invoice and preventing users from getting to the invoice if they haven’t logged in yet. The login and registration forms would need to validate user information—such as making sure the name only contains letters— and preventing users from registering with an already registered username. The site would also need to be more personable to the user that is logged in. Assignment 2 is also a way for us to fix any errors we had in Assignment 1.
- What did you learn from this assignment?
- From this assignment, I learned that I need to practice coding more and manage my time way more effectively. I would start coding for a bit and thinking about how I would edit my assignment1. I would get frustrated and become a potato for hours with assignment2 at the back of my head. When I eventually sat down and started coding and testing, I learned that the simplest things will not work for multiple things. For the longest time, I tried to make a simple conditional statement that would validate user information on the registration form. After hours of trial and error, I came to the conclusions that the statements I was writing did make any sense. I eventually figured out how to validate information in input fields. Through the in-class workshop and screencasts, I have a loose grasp on passing data through the server and as a query string. All in all, I need more practice in everything.
- 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?
- The way I got help was that I referred to multiple sources—such as stack overflow, youtube, a friend that’s a Computer science major, whenever he had free time, and referring to class screencasts and multiple people’s code. My main problems that needed helping was user validation, passing user data, and making the website personable to the user that is logged in. I was able to validate user passwords on the registration page and user login information—thanks to the in-class examples. The main falling point was when I started to test user validation on one field of the registration form—as explained in the above paragraph. I referred to multiple people’s code to see what I’m missing and why my code does not work. I checked how they were passing data from the products page to the login form then to the invoice. Passing data to the invoice and validating user inputs were the most time consuming and difficult part that I had in this assignment.
- How was developing this assignment different than assignment #1?
- Developing Assignment 2 was more challenging than I had thought it would be because I was too confident in my skills. I definitely did not have enough understanding of how to approach the assignment. Assignment 2 had more things to test and see whether they were actually working or if they did nothing. Like user validation, that took me at least 8 hours to figure out what I had been doing wrong. Putting product quantity information into the query string was also hard for me to get right and print the invoice page, rather than getting a blank page when I login.
- 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 that 45% of my time was all thinking about my approach and where I should start. 20% of my time was spent on coding, and 35% of my time was spent testing and debugging my assignment.
- Describe what worked well with this project? What did not work well?
- Truthfully, I would say that nothing worked well with this project because I was so hung up and frustrated with how things weren’t working; that led me to wasting my time and not figuring out the issues that I needed to resolve. I got the assignment done after inducing self-destruction on myself. The main things that did not work well with the project are the validations and passing user data from the registration page. A newly registered user will not get their name displayed on the invoice. But if that same user were to log in and purchase another set of products, their name would show up on the invoice.
- If you could go back in time and do things differently, what would you do differently?
- If I could go back in time and do things differently, I would definitely pump myself up more and throw all my distractions to the side, so I would not be tempted to use social media and youtube to let the hours pass by. With lack of exercise and routine, I’ve fallen out of the loop. So if I were to go back further in time, I would slap myself out of being lazy—the best time to do that is immediately.