HW2 - Reflection

Node

  1. Keep track of any changes you made to your back end as you implemented your front end. What changes did you need to make and why? If you could go back in time, is there anything you would change about the way you approached making your back end for HW1?
  2. I did not change much in the backend except what was required (added /api/ to my routes). So I did not found myself needed to change or change how I approached anything in the backend yet.

  3. When adding books and authors, did you only use server-side validation, or did you also use client-side validation? What are the pros/cons of making either choice?
  4. When adding books and authors, I used both server-side and client-side validation. I first check client-side validation because it provides immediate feedback. But server-side validation is also important because it ensures that the data is valid before it is saved to the database. So even if client-side validation passes, I double check the server-side.

React

  1. What was your general experience using React? What did you struggle with? What did you enjoy?
  2. This is not my first time using React, so I felt relatively comfortable with the basics. However, I did struggle with understanding some of the more advanced concepts, such as hooks and context.

  3. Compare and contrast writing React versus writing plain JS DOM manipulation code as you did in CS375. How was your experience different? Which do you prefer and why?
  4. Since I used React before I took CS375, I found it easier to manage state and props compared to the more manual DOM manipulation required in plain JavaScript. I prefer React because it's simpler and more intuitive

  5. What was your experience using types with the front-end? Did they catch any bugs? Did you struggle to type things correctly? Did they feel helpful, useless, tedious?
  6. I found using types with the front-end to be quite helpful, as they caught several bugs related to incorrect prop types and state management. However, I did struggle at times to type things correctly, especially when dealing with complex data structures. Overall, I think the benefits of using types outweigh the challenges.

LLMs

  1. Did you use LLMs to help you write your code? If yes, explain how you used them.
  2. Yes, I used LLMs to help me write my code by providing an example for implementing the tag for telling the user to fill in blank input. I wanted to figure out how to display the placeholder text correctly.

  3. If you used LLMs, reflect on how they changed your experience of coding. Did they make it more or less fun? Did they save you time? How do you think they affected what you learned from this assignment?
  4. Using LLMs made debugging easier but also helped me learn about certain features about React that I ahven't explored yet.

Back to home