E4: Progress in Programming Report

08 Nov 2022

My programming skills have greatly improved in the following ways:

Assignment 1 is a good example in showing how my programming skills have improved over the semester. In this assignment, as you know, we had to create a website that ran from a server on our own computer. Through this assignment, I was able to build my skill on what brackets, parentheses, commas, semi-colons, etc. belong where. For example, we created a loop that had to display our product. I now know how to create the for loop enclosed in curly brackets with the parameters inside parentheses. Another example is creating and knowing when to use functions that benefit what needs to be done, such as the callback function that creates the table in our invoice page.

I need to work on the following to improve my programming skills:

I need to read and learn more about the documentation on various terms. Sometimes I get confused when using new code in class, and when I don’t think or read more about how we are able to use them, it can be hard to understand. Also, when there is a situation that needs to use that code, I won’t know if I should or can use it. For example, in Lab 12, a lot of the code used on the server side is new to me. I had to learn what app.all did, which I learned was to let us be able to accept and respond to different kinds of requests (* for any).

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

I can agree with this statement, however, it may take me a couple of tries and I might have to rewatch the screencast. Especially for the longer WODs with more steps, it can be kind of confusing completing them without messing up. For example, Invoice 3 had many steps, and most of it was pretty easy for me since it was very similar to what we did before in class. But because it had so many steps, it took me a few tries to get it all down in the desired time limit. I can say that the WODs have taught me a lot as well, since I can practice what I learned in previous labs. In Invoice 3, we used a lot of template literals, which is something we used way back in Lab 5, and I was able to practice using them more in this WOD.

The labs have help me learn and I am able to complete them with confidence:

I think the labs are a great way to apply the readings in VS Code so that we are able to practice and understand them better. For example, for Lab 7, we read the documentation of loops and we applied those readings and screencast to the Loops Lab. This is where we were able to create the while loop with the embedded if statement to display our products. I can complete these labs with confidence because if I get stuck or need help I can refer to these readings and ask the professor or TA for more clarification as well, which is something I have done a lot by now.

I learned a lot from my experience doing Assignment 1 and feel ready to work on Assignment 2:

Assignment 1 was pretty tough and took a lot of time and effort, but I was able to complete it, and I can definitely say that I learned a lot. The Store 1 WOD and Lab 12 prepared me for a large portion of what I did for Assignment 1, such as using the POST method in Lab 12 and referencing the products display and invoice pages in the Store 1 WOD. However, there was only so much I could look back to reference until I had to try out new code. For example, on the server in Assignment 1 I had to use if statements in the app.post function in order to check the quantities available for a particular item. As for Assignment 2, I feel only semi-prepared for it, only because I am planning on building on my website from Assignment 1. I will feel more prepared for Assignment 2 when we complete Lab 13 and when I practice more with using the debugging tool.

I think the class can be improved to help my learning in the following ways:

As I stated before, I would feel more confident in completing the Assignments if we have already completed the corresponding lab. For me, it’s hard to focus on doing the lab at the same time I am trying to complete the assignment because I feel like they both involve a lot of time and attention. Having time to only worry about the assignment would help me focus on it better and I can better reference the already completed lab.

What helps me the most in class are (WODs, Labs, class website, screencasts, readings, quizzes, one on one help, working with classmates, etc.):

I often go back to the readings when I am confused or need to remind myself what code I need to use, depending on what I am trying to achieve. For example, in Assignment 1 I had to refer back to the documentation when trying to use the correct CSS to make my webpage look better.