A JavaScript Odyssey

17 Jan 2024

Early Beginnings with CS

Before becoming a CS major at the University of Hawaii at Mānoa, I had previously taken one CS class in high school. It gave me experience and allowed me to work on several small projects that tested my relatively limited knowledge of programming at the time. In retrospect, much of these projects featured work in which our instructor did not allow us to get acclimated with one specific programming language. Instead, he gave us projects, assigned us in groups, and simply required us to produce a solution to the problem space.

These experiences provided us an environment to work with code, but not the inner realm of how things work. For example, though I remember making a 2D platformer on Scratch, an interactive story with Python and a fitness mobile app using MIT App Inventor, it did not allow me to grasp the main components of a programming language’s syntax or semantics in an in-depth way.

A New Perspective

In the Fall semester of 2021, I began my journey as an undergraduate at UH Manoa. ICS 111 was the first CS course I took. During this time, I learned Java. It was the first language I was formally introduced to and gave me further insights into the importance of syntax.

Learning JavaScript was interesting since I had no prior experience using it. In all this, I found that freeCodeCamp’s basic exercises helped refresh ideas from Java while also learning new features for JavaScript In comparison, I think JavaScript is simpler to read and interpret compared to other languages. The less strict structure of the language and the absent need for type declarations stood out to me since it made reading and writing code feel more fluid.

From a software engineering perspective, I think that JavaScript is a great programming language, although it has drawbacks depending on where it is applied. Its syntax simplicity is a standout feature, but having a less strict structure for coding may lead to difficulties in catching errors and in computationally intensive tasks.

An Athletic Pedagogy

An athletic approach in learning class content through WODs (Workout of the Day) has been beneficial for assessing what I have learned so far in our ICS 314 course. Though I have been struggling with the practice WODs, I know that establishing a rhythm and maintaining consistency will eventually lead to better success with future assessments and projects.

Ultimately, the time-constrained environment has given me experience with handling pressure, but has also allowed for a way to find solutions quicker, and efficiently. I hope to see continued and improved success with this approach as the semester progresses.