Reflecting on JavaScript

29 Aug 2023

First Week of Javascript

This week has been my first experience with JavaScript. So far, JavaScript has been mostly familiar concepts as past languages I have learned. I do appreciate the syntax being lax and simple to work with. In the ES6 module, a noteworthy lesson revolved around the introduction of “let” and “const” variables. These additions represent a shift in variable handling, offering “let” for scoping within blocks and “const” for maintaining immutability. This is particularly intriguing from a software engineering standpoint, as it reinforces principles of localized control and predictability.

For software engineering, JavaScript would be difficult to work with as there are many aspects that would be troublesome to handle. Features such as defaulted global vars (which can be annoying in larger projects) or the libraries. Most notably the JavaScript objects are what confused me the most as they seem to behave differently from Java or C. Their behaviors are also confusing to me as they didn’t act as I would expect.

ICS 314 Software Engineering I

Experiencing the athletic software engineering education method, I initially found the concept daunting. However, I recognized its purpose in rapidly exposing us students to a wide array of topics within the short time of the course.

The practice WODs so far have been insightful and worrying to me. There are some that I can break down easily in my head and form a functioning solution fairly quickly with. But others feel like I am completely stuck(mainly on syntax) and require outside assistance to complete them. While this has been stressful for me to experience, it is the assignment’s entire purpose to force us to be prepared and understand what we will be asked of. After each practice, I was able to walk away able to identify my mistakes and correct them. I do enjoy the short prompts for each WOD as breaking down the problem and aligning the steps to a solution are what I enjoy most about the process.

Looking ahead, I am optimistic about adapting to the pacing and structure of this course. The combination of JavaScript exploration and athletic software engineering is suited for improving students’ knowledge of software engineering and real-world work skills. In this course, I aim to not only better my coding skills but also hopefully gain some essential skills for a successful software engineering career.