Rediscovering the Fundamentals

28 Jan 2021

First Dive

Every programmer has their starting point when learning a programming language. In my case, my initial encounter with a programming language occurred in 2014 with Lua. I was introduced to Lua through a game called Garry’s Mod (Gmod). Although I couldn’t fully comprehend most of the code at the time, I embarked on a self-taught journey, relying on trial and error to grasp the basics. Making incremental changes and testing the code in the game allowed me to identify and troubleshoot errors. The sense of accomplishment when achieving my desired outcomes using Lua was truly gratifying. In my case, I focused on converting models into playable characters and integrating them into a cosmetic shop for my Gmod server.

Success

The Gmod server I ran turned out to be a resounding success, with a maximum capacity of 27 players and a consistently full player base throughout the week. To enhance the server’s functionality, I delved into learning the basics of MySQL. It served as a database to store and maintain player points, ensuring their persistence across sessions.

JavaScript

After acquainting myself with Lua, my journey into programming continued with my first ICS 111 course, taught by the fantastic Professor Jason Leigh at UH Manoa. His humorous teaching style and easily comprehensible lectures made him one of my favorite professors. This course laid the foundation and provided me with the fundamental knowledge necessary to program in multiple languages.

Now, in ICS 314, I am thrilled to dive into JavaScript. I believe it is an incredibly valuable language for software engineering, and it appears to be slightly more approachable than Java. JavaScript’s dynamic typing and syntax similarity to other languages make it an appealing choice. The freecodecamp website served as a valuable resource for grasping the basics of JavaScript. While I mentioned it seems easier than Java, I did encounter some difficulties with advanced topics. Much of the challenge stemmed from my lack of recent coding experience. However, I firmly believe that coding is a skill that can be honed through dedicated time and practice. Fortunately, the “workouts of the day” (WODs) provided in this course offer an opportunity for practical application and reinforcement. Moreover, I am enthusiastic about the course’s emphasis on web development, as it aligns with my keen interest in this field.