Blog

Javascript Apologists

I love a good debate about ineffeciences in modern software development. Whenever someone introduces an idea like the 30 Million Line Problem or someone starts throwing molotovs at ElectronJS I love to chow-down on the various comment sections on Reddit and Hacker News. There's something about modern software ineffeciency that offends my sensibilities and I always enjoy digging in and finding other people's perspectives. Mostly, I seek out those reaffirming comments where I can silently smile and nod my head, knowing I am not the only one standing in my virtual garden, shaking my virtual fist at the current status quo.

These days, I find that most of these types of discussions are connected to the Javascript ecosystem in some way or another. This is not surprising since the Javascript ecosystem is huge and there is a ridicilous amount of JS devs these days. This is the most recent post that caught my attention. It triggered a fair number of comments on the reddit submission. The comment sections on these articles usually follow a fairly predictable pattern. There is usually one group ignoring the subject matter entirely and will instead start railing against Javascript as a whole. You'll have a second group disagreeing with the original premise and usually offering some counter-arguments or justifications for their support of Javascript. Finally you'll have a third group that will praise the original poster for fighting the good fight against the tyranny of javascript ineffeciency.

While the anti-Javascript group can sometimes be dismissive, I often find the arguments a welcome critical perspective against the undeniable status quo of Javascript. I think it is healthy to constantly challenge what exists as a way to contemplate whether it can be done better. I also find value in the posts where the Javascript supporter outlines their disagreements with the original submission. It makes for a healthy debate where both sides are presenting their arguments and I can scroll through to make my own determination. The shallow "+1" and supportive comments are usually limited and easy to ignore.

However, these days I am finding a new group of commenters that have reduced the quality of the discussions: the Javascript Apologists. These commenters slide into the discussion and insert profound and deep comments such as "that's great but it only works for mostly static content and not interactive sites" or "this would be avoided if you wrote clean Javascript". They blindly support the language and ecosystem to the point where they move the goal posts of the discussion. For example, if the discussion is about how removing Javascript improved things by 10% in this specific application they'll disregard the entire post because it doesn't apply to every scenario under the sun. Or if someone raises some concerns about the number of dependencies in a typical npm-based project, they'll dismiss their arguments as irrational Javascript hate. The biggest challenge is that it is difficult to identify them as an apologist unless they literally call the original post as absolute rubbish. Instead their comments are often written with a certain fake-sophistication to show their prowess:

This article is just silly. "Isn't this webapp slow? Now watch me use 10 lines of CSS instead of 3 lines of JS to show a modal!". And here I was hoping to see Asana card editor implemented with checkbox trickery in place of Javascript.

Except when we examine closer we can see it is really an apologist attempting to move the goal posts. This article was not about removing 3 lines of Javascript but it was about removing several KB!

Granted, while these kind of posters are present in all sorts of online discussions I have found them increasingly prevalent in Javascript related debates. I suspect it's a numbers game, since there's significantly more Javascript developers it would make sense that there would be more Javascript apologists making low-effort comments. As a result, I've found the debate around Javascript to be weaker and the comment sections more shallow. It's a shame because while I don't personally enjoy using Javascript, I enjoyed the constructive discussions and insights from all sides. It was from these kinds of discussions that pro-Javascript users convinced me to use less jquery/frameworks and more vanilla JS. It was also these kind of discussions that anti-Javascript users encouraged me to read up about Elm and similar transpiled languages. Now there is more junk to have to sift through to find the better comments and I am not sure if it is worth it...I guess I'll have to stick to the C/C++ discussion threads until the C/C++ apologists take over those too!