@sil except #JavaScript is a net negative in my experience as it is only good for 3 things:
making websites #inaccessible to #TextBrowsers, thus #discriminating against #blind users.
Injecting #malware like #Shitcoin #miners for #CryptoJacking.
Tell me i I'm wrong!
#JS #PayOrOkay #Privacy #ITsec #ClownFlare #CloudFlare #Enshittification #bloatware #ads
@kkarhan @sil I do have sufficient data, and you're still wrong. And the kind of rhetoric you're posting here is not without its consequences either: https://blog.aurynn.com/2015/12/16-contempt-culture - so I'd suggest putting a bit more thought into those consequences before posting like this.
Speaking of "scientific", there's a reason that proving an absolute negative (eg. "it has no valid usecases besides X") is so hard - because it's usually wrong, as you are required to prove something to the exclusion of everything else that could possibly exist, and you're never going to be aware of all of those possible things. And this should inform the way you speak about topics, if you value a scientific approach.
[…] a net negative in my experience […]
is not clear?
Sorry, but it only takes few things to sour something for people.
Obviously #JS, alongside #Cookies and #Tracking, are mere tools of #Enshittification but that certainly is as much warranted as the shitstain #Blockchain and #NFTs got due to #CryptoBros using #Shitcoins to #PumpAndDump-#scam #TechIlliterates and #FinanceIlliterates that are "#HornyForMoney!"
Either we say "#Tech is #apolitical!" and accept diverging opinions and experiences to exist as equal
or
We say "#TechIsPolitical!" and ask "Who benefits?" from the rapid onset #Enshittification and purposefully engineered, #PlannedObsolescence due to #Bloatware, regardless if JS or #Windows11 or purposefully bricking support for legacy versions of #iOS.
@[email protected] except #JavaScript is a *net negative* in my experience as it is only good for 3 things: - making websites #inaccessible to #TextBrowsers, thus #discriminating against #blind users. - Injecting #malware like #Shitcoin #miners for #CryptoJacking. - Violating #consent of users with #tracking and #adware. Tell me i I'm wrong! #JS #PayOrOkay #Privacy #ITsec #ClownFlare #CloudFlare #Enshittification #bloatware #ads
@kkarhan @sil Tech is political. That doesn't mean that your personal gripes with a language automatically represent a valid political argument. Or that it should be attached to a post that really has nothing to do with any of it.
I regularly talk with people about how a lot of computer technology is designed to benefit capital. But the emphasis here is on 'a lot'. JS is not special here, and it being singled out like this suggests that you're not so much doing political analysis, as trying to prop up personal opinions and feelings with a more scientific or political-sounding rationale after the fact.
If you genuinely want to approach this from a scientific or political perspective, then you should be doing a lot more listening and reading about eg. the history of JS (and computing more broadly, for that matter), and a lot less making bold claims in other people's threads. Understand the background first before arguing about it.
@kkarhan I'm not missing it, I'm choosing not to engage with it. Because it is clear from everything that you have already made up your mind, and you are not willing to reconsider the way you approach the topic.
There's no possible useful outcome from discussing the subject in that situation. The best case is that each of us leaves the discussion annoyed and exhausted because it didn't get anywhere. Accepting that you may be missing something (and reducing the intensity and certainty of your words correspondingly) is a prerequisite for a useful discussion about anything, really.
The alternative being… what?
There are so many “JavaScript is bad” posts, and, sure, JavaScript is used to add plenty of undesirable behavior to web pages. But JavaScript is the only way to add ANY behavior that isn’t built into HTML or CSS to a web page.
And, again, sure, a lot of “benign” behavior on the web isn’t STRICTLY necessary.
My point is that JavaScript is a tool, and can be used for good or bad. Please don’t blame JavaScript for the ills of human nature.
@inaction_figure @sil maybe certain things shouldn't be implemented on the web to begin with?
But maybe that's me who just wants to be able to use the #Web and not have my CPU rammed to 100% from a single website!
If it wasn’t JS, there would be some other scripting language for web pages.
You could always turn JS off in your browser settings.
But there’s plenty of other shenanigans to be had, like ads & tracking pixels, phishing, etc etc.
The problem, as always, is the people who misuse these tools for their own gain.
“It's a dangerous business, Frodo, going out your door. You step onto the road, and if you don't keep your feet, there's no knowing where you might be swept off to.”
@inaction_figure the problem is that #WebDevs and Corporations using #JavaScript these days go out of their way to be assholes and literally brick shit if #JS is disabled.
It's like refusing to serve a #cyclist in a drive-in!
That is more a problem with not creating a solution that “degrades gracefully”. Lazy web app development.
I’m not saying there isn’t a problem, but the problem isn’t JavaScript. Well, not all of it.
@sil the biggest thing that everyone hates about JavaScript is implicit type conversions. It’s a feature that is so bad that an entirely new language was eventually built to fix it.
Oh and implicit type conversion was added after launch when users demanded it (i.e. not during those 10 days)
@dandylyons @sil I assume you're referring to Typescript, in which case it definitely does not "fix" implicit type conversations. TS is a language that only exists as a pre-compilation language, it doesn't have any runtime characteristics of its own, and therefore just takes on those of its target language (ie. JS). Implicit type conversion is a runtime characteristic, not a syntactic one.
What TS did was (mostly) replacing dynamic with static typing, but that's something very different from removing implicit type conversion. TS code will still happily result in implicit type conversion if the values being handled would trigger it, and it's very easy for this to happen accidentally when eg. handling structured external input, because you can't statically check that at compile time.
If you rely on TS to prevent implicit type conversion, you're going to have a bad time and a lot of weird bugs, is what I'm saying.
(I do agree that the implicit type conversion is a terrible misfeature, for what it's worth.)
@sil fair point but the difference between 10 days and a month for language design and implementation is kinda huge IMO
(or maybe not, I'd be curious to know what brendan eich would say about being given more time in the early days)
@sil perhaps the larger problem was Microsoft implementing it as a Netscape competitor, which meant early mistakes (like the many implicit coercions which have lead to countless bugs) were quickly solidified with no opportunity to fix them without breaking the Web.
IIRC Brendan Eich claimed Microsoft reached out to him about the coercions, and Eich said it was too late to fix them. However, he later changed his mind and asked Microsoft if they wanted to fix them. "Too late!" replied Microsoft.