this post was submitted on 29 Jul 2024
93 points (97.0% liked)

Programming

16975 readers
1288 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 1 month ago* (last edited 1 month ago) (2 children)

You seem to confuse "people making mistakes" with "a language that is designed in such a way that those mistakes are not only common, but integral part of the experience."

I'm not saying I make such mistakes, I say the design is crap. It's not a skill issue, it's a design issue. People say null pointers were a mistake. I'm inclined to agree. Not because I get a null pointer exception every five minutes, but because there are better ways to handle cases like that.

You said I was a rookie, I proved you wrong.
You said there was nothing crazy about web application complexity, I provided you with a common, glaring example. There's nothing unhinged in saying "look I installed Electron and React and not my project has 3 million lines of crap I have to worry about".
Everything else was just emphasis for the sake of it.

But when you don't have a valid argument, you resort to personal attacks. Maybe it's you that should learn to be better.

[–] [email protected] 1 points 1 month ago (1 children)

Hi, I don't really code besides computation stuff in Python. You seem to be really knowledgeable, could I ask, what does the future of the web look like? Is it Rust and WASM? Or will JS and TS always have a place even a decade from now?

[–] [email protected] 2 points 1 month ago* (last edited 1 month ago)

The fairly unique thing about the web is that the tech stack is pretty much entirely dependent on what browsers are "winning" at any given time. There are web standards, but Chrome steamrolls them regularly (either by ignoring them or by pressuring the committee to standardize what they want). This is why browser monoculture is bad, and why people recommend Firefox and other non-Chrome (or really, non-WebKit) browsers, as a matter of principle.

So right now, with Chrome's dominance, Mozilla's struggles, and the extremely slow progress of WebAssembly and WASI, it definitely feels like JavaScript will remain dominant for a long while. But since Chrome does support WebAssembly and Google participates in WASI, and since there's no fundamental reason why WASI can't eventually provide everything that JS does today, there's good reason to expect the JS stranglehold not to last forever.

And the great thing about WASM/WASI is that, since it's designed as a compilation target rather than a language, there won't be any remaining reason for a single language (such as Rust) to dominate. Rust got an early lead in WASM because they put the effort into making it a viable target platform for the compiler, and because it's the kind of language that attracts people who dislike JavaScript (such as myself). But there's no reason a different language couldn't rapidly become the most commonly used WASM language if, say, a web framework in a previously-niche language becomes popular. (After all, Rails, a back-end framework, is what popularized Ruby.)

Edit to add: I say "fairly unique", but in fact there's a very analogous situation with C: https://faultlore.com/blah/c-isnt-a-language/

[–] [email protected] 0 points 1 month ago* (last edited 1 month ago) (1 children)

I'm not saying I make such mistakes, I say the design is crap. It's not a skill issue, it's a design issue.

That's what people with skill issues tend to say.

You learned how to write == in every other language, but you can't figure out === in typescript?

You're bitching and whining about a tiny syntax issue that enables backwards compatibility for literally every web site ever created.

You said I was a rookie, I proved you wrong.

You apparently still bitch and whine like a rookie. Maybe work on your emotional maturity if you want to come across as an experienced senior and not just a Reddit-read edge lord.

You said there was nothing crazy about web application complexity, I provided you with a common, glaring example.

No, you didn't.

There's nothing unhinged in saying "look I installed Electron and React and not my project has 3 million lines of crap I have to worry about".

Yes, there is, given that the vast majority of web applications run in this thing called a web browser, and you decided to instead choose the project example where you install a whole web browser alongside operating system shims into your project.

[–] [email protected] 0 points 1 month ago

That's what people with skill issues tend to say.

Not that's what people who can recognize genuine architectural defects and aren't blind fanboys say.

You apparently still bitch and whine like a rookie.

Only to your eyes since apparently pointing out genuine problems is whining. It's okay for people not to like the stuff you like. And no, using a few swear words for emphasis doesn't make someone immature, nor does listing what one has worked with for context.

You learned how to write == in every other language, but you can't figure out === in typescript?

...you still haven't realised that === is not what I have a problem with have you? It's literally a non issue. In fact, equality in general is a non issue. It's the wonky standard library, lack of proper support for binary operations, serialization and almost everything being an afterthought that I have a problem with. Does it prevent me from using the language and write proper, stable software? No. But it's not good.

you install a whole web browser alongside operating system shims into your project

Except that amounts to a mere ~180_000 lines of the 3 million. Did a plain create-react-app without Electron, still over 3 million.

Now, since it's impossible to have a genuine conversation if the other party's response is "haha you suck" to any genuine, documented criticism, are you gonna grow up or are you gonna keep acting like an offended 13 year old who can't find a better retort?