E5: Reflecting on Assignment 2 Technical Essay

06 Dec 2023

In Assignment 2, I successfully implemented a functional login and registration page, storing user data in a JSON file. For more details, please refer to the link to the assignment page on my GitHub repository.

1. What did you learn from this assignment?

This assignment enhanced my problem-solving skills and deepened my understanding of global variables. I gained valuable insights into creating effective login and registration systems, including the implementation of a functional logout button.

2. I have learned a lot from doing WODs and can do them without copying the screencast:

WODs have proven to be a pivotal learning tool, challenging me to execute tasks independently while articulating my understanding. The absence of a screencast during later WODs pushed me to troubleshoot and think critically, building my confidence through perseverance and collaboration with classmates.

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

I tackled this assignment independently, without a partner. However, I did receive assistance from Dan when needed.

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

When faced with challenges, I sought assistance from Dan during several meetings and utilized ChatGPT when needed. Dan provided crucial support in creating a functional logout button and implementing a redirect page for logout confirmation.

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

Assignment 2 posed greater complexity, particularly concerning the login and registration pages, including the incorporation of IRs. Handling data within the user JSON file was a significant aspect involving code retrieving existing data and updating it with new registration information. Although more extensive, this assignment improved my overall comprehension.

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 spent approximately 25% of my time pondering solutions, 45% writing code, and 30% on testing and debugging.

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

Notable successes include the significant improvement in my problem-solving and debugging skills compared to the previous assignment. However, I encountered difficulties with the logout functionality, struggling to ensure proper user logout. Collaborating with Dan was pivotal in overcoming this hurdle and fixing it to start working properly.

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

If given the chance to revisit this project, I would opt for simpler code structures. Acknowledging Dan’s advice about code complexity, I would seek his input more frequently to explore alternative, more straightforward approaches.