Remix.run Logo
zb3 7 months ago

If Rust was really that superior, would companies using it not have a competitive advantage in the market?

n144q 7 months ago | parent | next [-]

> have a competitive advantage in the market

In theory, yes, but there are two problems:

(1) You need to either hire or train someone to write in Rust, and neither is trivial amount of effort. And at the end of the day, you need to push features out. Let's be real: you can find someone to write JavaScript to do full stack development, anywhere in the world, for a cheap price. Rust? The code may be more robust and easier to maintain in the long run, but it's hard to do that unless you already set up a team for that.

(2) Most software companies don't actually care that much about the language they use, the tech stack, or their infrastructure in general. Remember there are lots and lots of software companies that are not Google/Meta etc, and they are not at the bleeding edge of have state-of-the-art infrastructure. Saying that as someone working at a company with thousands of developers, and there are millions of old, ugly, almost unmaintainable Perl code in our core infrastructure running right now. From outside, it all looks fine.

PLenz 7 months ago | parent | prev | next [-]

Languages are fungible at most scales

Joel_Mckay 7 months ago | parent [-]

Most languages exhibit Isomorphism, and necessarily so...

People are happy in Ivory towers, and often ignore better high-level llvm compiler options. =3

hiccuphippo 7 months ago | parent | prev | next [-]

Funny enough, there's a bunch of Javascript tooling for which being written in rust, as opposed to thee one they are replacing written in js itself, is their competitive advantage.

zb3 7 months ago | parent [-]

Don't you think their actual advantage is that they are compiled to native code?

pdimitar 7 months ago | parent [-]

Not necessarily. To me the actual advantage is that they are times, if not tens of times, faster than the semi-equivalent JS tool.

People love to downplay long startup times or longer runtimes ("Who cares if it takes 1s to start?" and "It takes 17s vs. 1s, big deal, you are overreacting!") but it does add up with time and makes people dissociate and stop caring. I've seen it (and it happened to me as well).

AlotOfReading 7 months ago | parent | prev | next [-]

How many wildly successful finance firms are running COBOL somewhere on the backend? How many successful healthcare systems are running MUMPS? Bad languages don't seem to kill companies, just make disgruntled developers and bad products.

zb3 7 months ago | parent [-]

So I should clarify - I was referring to new code. If the old code already works it might not be worth rewriting it.

jenadine 7 months ago | parent [-]

Old code need maintenance, bugfixes and new features. One does not rewrite their stack from scratch.

But many companies are definitely writing new projects in rust rather than C++, including Big Tech.

wvenable 7 months ago | parent | prev | next [-]

That is, unfortunately, not how anything works.

zb3 7 months ago | parent [-]

Tell me more.. there's a X lange and it's superior in every aspect. Wouldn't new apps be written in that language? Why?

wvenable 7 months ago | parent [-]

If I created the perfect language tomorrow the very first problem is that absolutely nobody would have any experience in it.

It would also have no other ecosystem. No books. No tutorials. No mentors. No libraries. No frameworks.

And even as it got those things, they would remain immature and incomplete for a long time when compared to the ecosystem around languages that are decades old.

I could also make an operating system that was superior in every way and it would fail because there would be no apps for it.

zb3 7 months ago | parent [-]

In other words, it wouldn't be superior according to the way I understand it. Learning curve, existing libraries and solutions all matter in this comparison..

For me it'd have to interact seamlessly with other languages and enable incremental adoption, otherwise you can't swap one with another.

But you can swap a floppy disk with USB flash drive if the PC has an USB port, so that's what I mean by superior..

wvenable 7 months ago | parent | next [-]

Your original premise is flawed; there can never be language that is superior in every aspect. Almost everything is a trade off. A technology that is good for one purpose might be wrong for another and vice-versa. Also a new language will always start with no adoption, no experts, and no libraries so that is also a trade off.

A language that allows incremental adoption will necessarily be limited by that necessity -- another trade off.

When USB was new very few computers had USB ports but nearly all computers had floppy drives. Floppy disks were cheap and flash drives were expensive. If your purpose was to share data then using a USB Flash drive at that time was an inferior experience. If you had a lot of data, a writable CD was a much better choice. If there was ever a period that USB drives were supreme for that task, it was brief. With higher speeds and greater adoption, it quickly became much better to use the Internet to exchange data.

johnnyanmac 7 months ago | parent | prev [-]

>it wouldn't be superior according to the way I understand it.

Money is the biggest parameter, and it would not make number go up in the short term. Tech stacks are in inherently a long term investment and companies are conservative to do big reworks like that.

qayxc 7 months ago | parent | prev | next [-]

There's a huge amount of legacy code that cannot be replaced overnight. There's thousands of person-hours invested in such codebases and they need to be maintained. There's also a much greater number of experienced C++ programmers available versus Rust programmers with the same level of experience (especially working experience, not just the language itself), so that's another factor.

So companies with lots of earning potential in greenfield projects might indeed have a competitive advantage, while it's more difficult for those with products that have a large existing C++ codebase.

criddell 7 months ago | parent | prev [-]

Maybe. The writer notes other technologies that were superior (on some axis) and won second place:

> But Rust is better in the same way that Betamax was better than VHS, Mastodon is better than Twitter, Dvorak keyboards are better than QWERTY, Esperanto is better than English and Lua is better than Javascript