The following text is licensed under a CC-BY-SA 4.0 Global License. You may share it freely, even for economical purposes, so long as you provide me credit and a link to the license.
I did not code my first “Hello, World!” program last night. Over 9 or so years, I have worked with a variety of languages, from the blazing speed yet unforgiving precision of C++, to the safety of Java and Python, even putting up with ARM Assembly and self-studying a bit of Rust, which is new enough in 2023 that it is not currently taught at UH Mānoa.
That may or may not be their loss.
The programming language that has most recently crossed my path is none other than JavaScript. I had heard of it over the years, sometimes neutrally and rarely negatively, but because my my programming studies were focused on game development for the longest time (and still are to some extent today), I had never used it until now. My introduction to the language began with the equivalent of a recruitment exam for the Légion étrangère, having to rapidly translate my knowledge from other programming languages into JavaScript through a lengthy series of rote problems. While it did familiarize me with what was and was not new, I can safely say the most interesting part was being able to receive the problems in Japanese, the language of my major (which I later switched to Italian when I began to space out). After that, I took different tests, demanding I solve extremely common problems using it. In these, the only difficulty came when I had to do one on a Steam Deck, but I had forgotten my external keyboard. Even then, the logic was simple.
So far, while JavaScript is far from atrocious, my first time with it was not intellectually challenging at all, souring my image of it for good. It also does not help the only appeal it has so far is its essentiality in web design. I will freely admit that since I have never paid much attention to the latter in life, the language simply was not for me at the time. However, it is a known logical fallacy to assume that just because everyone else is jumping off a cliff, that you should as well. While I was using online compilers, I noticed “features” such as the ability to return many possible types out of one function and the lack of errors when a line of code did not end in a semi-colon. What kind of language is this? C++ may be infamous for crashing, but it is at least speedy, and is thus a favorite among large game developers. Rust can do the same, but so much more safely that it became the first new language to be added to the Linux kernel when it was just 35% of C’s age when the kernel first began. Python is another interpreted language that has a much more human readable interface, such as through consistent rules on using semicolons. It, too, is used not only in web development, but also scientific areas such as AI and robotics.
What, then, does JavaScript do to stand out? Where, outside of its web development cage does it have a purpose? How long will it even have one there? If not for long, what will become the spice of the developers’ lives?