Programming languages, much like the jackass in the middle, are tools. Different tools are for different things. The right tool for the job can make your day. The wrong tool can make you question your entire career.
That is, like, genuinely an advantage, though. At $ DAYJOB, we have a project that spans embedded, backend, web frontend and CLI, and for all of these, Rust is decent.
Like, I can see why a frontend dev would want to use HTML+CSS+JS/TS (rather than HTML+CSS+Rust), mainly because the massive ecosystem of JS components makes you more productive.
But you pretty much won’t ever develop a web frontend without an accompanying backend, and then being able to use the same language-expertise, libraries, utility functions and model types, that is also a big boost to productivity, especially if you won’t have a dedicated frontend dev anyways.
Realizing that also made me understand why people subject themselves to NodeJS for their backend, which has the same advantage, just with the big ecosystem in the frontend and the small ecosystem in the backend.
because the massive ecosystem of JS components makes you more productive.
Slightly less ironic: I question even this right now (as I have to suffer from endless “hot”-reloading and browser-crashes because of Next.js bloat).
I think the massive ecosystem has fewer high quality libraries than Rust at this point.
I use both JS/TS in frontend and Rust (either frontend more as a hobby and backend) extensively, and I very often check the dependencies-source, and even more often rewrite it (unfortunately not in Rust), because of low-quality.
And it’s sooo slow… the tooling and the frontend (albeit I think that has a very lot to do with next.js… and with how easy it is to make it slow for someone not that experienced or someone not being extremely careful).
Frontend is not yet as matured as JS/TS (whatever matured is, but the count of frontend frameworks is at least a magnitude higher in JS/TS), but I think when I would start a new company I would default to Rust now as frontend indeed, the language itself is for me reason. And I think vanilla-js (or Rust?) is not that much worse (time/effort-wise, sanity etc.) for more complex applications than what the Next.js ecosystem has produced so far.
I seem to remember hearing this story: Back in the 2000s, Google did all their back-end stuff in C++ to make sure it was performant, and when they acquired Youtube they found it was made in Python, slow to run, fast to develop.
Look at the amount of data that goes through their servers every millisecond. It’s ridiculous. All things considered, YouTube is lightning fast.
Maybe the UI isn’t as snappy as it could be, but the blame there lies solely on throwing more and more javascript at it to add “features” that end users don’t really want.
A tool of a person is a fool who is being used by someone else. They might not be useful to you, but to who ever makes the koolaid they’re drinking, they’re a very good tool.
That’s just not terribly meaningful, though. Was JavaScript the “best tool” for client-side logic from the death of Flash until the advent of TypeScript? No, it was the only tool.
Programming languages, much like the jackass in the middle, are tools. Different tools are for different things. The right tool for the job can make your day. The wrong tool can make you question your entire career.
Right… And the best tool for every job is of course Rust.
Embedded? Rust!
Web Frontend? Rust!
Web Backend? Rust!
idk what orher kinds of programming exist…
Game dev? Just force Rust into it, despite being quite mediocre for the job, there’s so many engines written in Rust. ECS is the answer to everything!
“Game dev… Just force Rust into it”
What’s wrong with Rust for game dev? It seems similar to C++, and C# which are the dominant languages.
I can see arguments that the current projects have poor approaches, but not that the language itself is ill-suited.
That is, like, genuinely an advantage, though. At $ DAYJOB, we have a project that spans embedded, backend, web frontend and CLI, and for all of these, Rust is decent.
Like, I can see why a frontend dev would want to use HTML+CSS+JS/TS (rather than HTML+CSS+Rust), mainly because the massive ecosystem of JS components makes you more productive.
But you pretty much won’t ever develop a web frontend without an accompanying backend, and then being able to use the same language-expertise, libraries, utility functions and model types, that is also a big boost to productivity, especially if you won’t have a dedicated frontend dev anyways.
Realizing that also made me understand why people subject themselves to NodeJS for their backend, which has the same advantage, just with the big ecosystem in the frontend and the small ecosystem in the backend.
Slightly less ironic: I question even this right now (as I have to suffer from endless “hot”-reloading and browser-crashes because of Next.js bloat).
I think the massive ecosystem has fewer high quality libraries than Rust at this point. I use both JS/TS in frontend and Rust (either frontend more as a hobby and backend) extensively, and I very often check the dependencies-source, and even more often rewrite it (unfortunately not in Rust), because of low-quality. And it’s sooo slow… the tooling and the frontend (albeit I think that has a very lot to do with next.js… and with how easy it is to make it slow for someone not that experienced or someone not being extremely careful).
Frontend is not yet as matured as JS/TS (whatever matured is, but the count of frontend frameworks is at least a magnitude higher in JS/TS), but I think when I would start a new company I would default to Rust now as frontend indeed, the language itself is for me reason. And I think vanilla-js (or Rust?) is not that much worse (time/effort-wise, sanity etc.) for more complex applications than what the Next.js ecosystem has produced so far.
So, lisp?
Yes use a lisp family language for everything and you will be enlightened
Tbf racket has a stupid easy graphics library.
Yeah, that’s the second option.
I seem to remember hearing this story: Back in the 2000s, Google did all their back-end stuff in C++ to make sure it was performant, and when they acquired Youtube they found it was made in Python, slow to run, fast to develop.
Did they change it after the acquisition? Or is python why it’s still so freaking slow?
Things is you don’t crunch numbers in Python code, you do that in libraries called from Python.
It’s a few statements of orchestration and any heavy lifting is encapsulated compiled code.
You don’t do tight loops on Python, or if you do you’re using it wrong.
Lol @ YouTube being slow
Look at the amount of data that goes through their servers every millisecond. It’s ridiculous. All things considered, YouTube is lightning fast.
Maybe the UI isn’t as snappy as it could be, but the blame there lies solely on throwing more and more javascript at it to add “features” that end users don’t really want.
is it tho? Or youtub is just profitable enough to neglect the compute overhead cost?
Aaand artificially slowing down video loading by several seconds, last but not least.
Funny how tools are useful. But a person who is a tool is not.
Tools are always useful. If its a good thing to (ab)use said tool depends on the tool and if its human or not :p
… And the job for the tool ofc
A tool of a person is a fool who is being used by someone else. They might not be useful to you, but to who ever makes the koolaid they’re drinking, they’re a very good tool.
I think that’s the basic idea, but in practice it’s used for people who are just generally dumb as well.
Well, when was the last time you looked at a hammer and thought “y’know, you’re pretty smart!”
Eh, people misuse terms all the time. It shouldn’t change what it’s meant to mean.
I guess, but neither kind of dashboard catches dash from your horses these days. And forget about all bears being “brown ones”. Language evolves.
Sometimes I just want to use a particular tool, and care less what I’m making with it.
I rarely get this pleasure at work.
Exactly. And what is the best tool? The best tool for the job
You mean js
/s
Exactly! There is no best tool. There is, however, a worst tool. It’s bazel.
And what is the best tool for the job? The best tool for the job.
AI! (This message brought to you by The Microsoft Marketing Dept.)
No silly! It’s clearly a goat, possibly a whole farm of them
That’s just not terribly meaningful, though. Was JavaScript the “best tool” for client-side logic from the death of Flash until the advent of TypeScript? No, it was the only tool.
If it was the only tool it was both the best and the worst by definition.
You’re halfway there.
Yes, it was the best tool, in context
In that context, what was better?
Exactly, the hivemind is strong in this thread