Signs of Life: JavaScript

17 Jan 2024

Getting Familiar

As I’m starting to get more and more familiar with JavaScript, I can’t help but notice the many similarities it has to other programming languages. The, if, else, for, and while loops/statements, create a sense of familiarity and comfort as I’m on this path of learning the ins and outs of JavaScript. Not to mention, the variable scopes in JavaScript are similar to my favorite coding language C++, so these similarities greatly increase the confidence I have in learning JavaScript.

Jordan vs. LeBron

When it comes to the G.O.A.T list, you have to mention names like C/C++, Python, SQL, Java… but where does JavaScript belong? Top 1? 2? 3? Top 5? JavaScript has greatness running in its blood, it comes from greatness. JavaScripts lineage can be traced back to Human-Computer Symbiosis and Lambda Calculus, which helped contribute to the concept of functions as first class objects. In JavaScript, since functions are considered first class objects, they can be assigned to variables, passed as arguments, and be returned as values. These capabilities are key to Javascripts design that C and SQL lack. Now let’s talk about JavaScripts modern day game, how its transcended itself. JavaScripts asynchronous programming style, based on callbacks and promises, allows it to excel at managing concurrent processes, such as handling multiple requests in web applications, without affecting the main program execution. Python and C++, while amongst the greats in their own right, lack the built-in capability for smooth asynchronous programming, making JavaScript the preferred programming language for highly responsive and dynamic online applications. This is where JavaScript’s adaptability really shines, separating it in the software development scene. So where does JavaScript fall for you on the G.O.A.T list? Personally, I’d say it’s at 2, behind C++.

Walk In My Shoes

My journey in Software Engineering is just beginning, but the “athletic” learning and teaching approach in this class, especially with the “Workouts of the Day” (WOD), is extremely enticing. This athletic approach seems to really lay the foundation for the efforts needed to really hone your skills, craft, knowledge and understanding not only just for JavaScript, but all aspects of Software Engineering. The WODs seem like they’re going to help lay the foundation by emphasizing the importance of consistent practice. But I can see the WODs also bringing a high level of stress, especially when actually doing them in class. It’s going to take consistent effort from day one, forming healthy and successful habits, to minimize the stress WODs may bring. This style of learning isn’t a one size fits all approach, but it is an approach that I personally can appreciate and hope to get out what I put in.