this post was submitted on 14 Nov 2023
804 points (94.6% liked)
Programmer Humor
32410 readers
361 users here now
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I prefer to think of it as maybe don't shoehorn a shitty type checker into a dynamic language. Honestly I think people who get excited about typescript should fuck off and go write java instead.
JS is the one that's built into the browser. If JS wasn't built into the browser, it would go onto the trashbin of bad old languages that only survived because of their platform like VBA and ActionScript and .bat batch scripting. You can't compare JS to any other language because JS is the one you don't get a choice on.
Tell that to the NodeJS people...
Stockholm syndrome.
I've heard it said that the longer you work with JavaScript, the more you hate it. I'm not gonna lie, I really miss working on ASP.Net Core backends. Switching from that to NodeJS was a huge downgrade.
Fine but whatever you think about js, dynamic languages have certain advantages, and trying to turn it into another java or c# is a stupid endeavor. You're not "fixing" javascript by making it more like java.
The type checker is actually pretty smart and can handle a lot of weird use cases, especially in strict mode (if you mark everything as Any type, that's on you). The fact that the underlying language is very dynamic can be both good and bad. It's good because you can be flexible when you need to be, but it also won't prevent you from writing really shitty code, which lends it its reputation.
I don't know if you've ever tried writing frontends in Java, but it is terrible, especially if you want to make dynamic and accessible UIs. You don't use a power drill when you need to hammer a nail.
My comment was obviously devoid of any nuance, I am on programmer humor after all. I actually do use typescript, but I think fixing issues in application code that isn't used by other code is a waste of time. I also think there are lots of advantages of a very dynamic language, like usable REPLs and much easier debugging. We can take these advantages way further by embracing the dynamic nature of javascript, like how lisps do it for example. But instead, everyone is happy going down the route of turning it into another c# (nothing against c# but we don't need all languages to be c# and java).
That's what WASM is for, but it's not there yet :(
And you still have to use js for hooks and stuff