More use of Rust is inevitable in open source software(utcc.utoronto.ca) |
More use of Rust is inevitable in open source software(utcc.utoronto.ca) |
Take backend dev for example: unless you're trying to squeeze the last drop of performance from your CPU, most concurrency issues are usually dealt with at the middleware level (DB, Queue, Nginx, etc), and most performance issues are usually I/O related.
I'm currently evaluating developing a cross-platform mobile native library using Rust, but i really don't see myself inflicting the pain of that language to the rest of my team.
Or maybe it's just a reflection on how active the community is ?
edit: i realize a lot of people are probably still coding in C because they have no other choice, and for them it's probably a good idea to switch. However, for all the rest i really don't see the point.
Arguably, it's because you tried it "only for a few hours". Rust has a relatively steep learning curve and it usually takes several months to become comfortable with it. But once you get over it, it often becomes quite hard to return to your previous languages, be it Python or C/C++.
Yes, there are tasks which are ill-fit for Rust and your IO-bound backend example is a good one. Not only Rust ecosystem is somewhat underdeveloped in this area (and don't get me started on Rust async and the heap of troubles it causes...), but also you have business requirements which change unpredictably and Rust's strictness introduces a certain friction in such environment.
But I think your mobile library can be a good project to properly learn Rust. If it's properly encapsulated, I don't think it will cause much trouble to your team outside of build system changes and risks associated with you being its sole developer.
You failed to address OP's point.
OP wondered why would he, or anyone, subject anyone else to a steep learning curve if there are no meaningful advantages to be gained.
As OP mentioned:
> Take backend dev for example: unless you're trying to squeeze the last drop of performance from your CPU, most concurrency issues are usually dealt with at the middleware level (DB, Queue, Nginx, etc), and most performance issues are usually I/O related.
Why do you believe that doubling down on a whole new programming language and tech stack would help address the fact that you do not benefit from any of it's sales pitches?
Honestly, your comment reads like a boilerplate reply to any criticism of Rust that presumes Rust's only problem is it's developer experience caused by it's learning curve but once that's behind anyone it's somehow the ideal solution for any imaginable scenario.
I don't use it because I don't have a need for low level coding on platforms with mature Rust support, but if I did I am pretty sure it would be my language of choice without hesitation.
OTOH is very slow to compile.
One advice for people wanting more adoption for Rust: don't write existing programs: shells, cat, ls, etc. We already have them. Write new programs which will be useful to a lot of people. And then the adoption will occur naturally.
Apparently it’s difficult to implement doubly linked lists https://news.ycombinator.com/item?id=16443688
If your distribution environment doesn't strive to simplify this (eg: fedpkg, mock, RPM macros), what are you using it for?
No famous mainstream language in use today, has ever been adopted based on "it happens on it's own due to it's usability and features".
Before you rush out to write something like C, remember that it only came to use thanks to AT&T, Bell Labs and UNIX.
Even a language that seems to have everything going for it can fade out. Ruby's success used to be thought assured. Then it suddenly wasn't. Python has run the oddest course. It plodded along for two decades, almost imploded on the 2->3 transition, and then got its miracle.
rust wants to penetrate the industry by-proxy rather than with interesting tech/projects
Mozilla gave up rewriting firefox in rust
Embark gave up writing their new game engine in rust
There are a ton of niche languages that have very enthusiastic fanbases, but they don't get the same snowball effect rust has gotten because it's a great language on so many dimensions.
My doubt is if it'll work over a basic mobile phone connection, and that lots of folks in developing countries, as I also will be soon, will be left out because of this behavior.
There are ways to minimize the final resulting binary though, such as link time optimization, stripping symbols, building in release mode, and more. The following does a good job going over the options:
Zope in the early 2000's, Guido's employment at NIST, CNRI, Google, Dropbox and now Microsoft. CERN and Fermilab pushing for it during 2003 onwards.
Ruby suffered the same fate as languages that are tied to a killer framework, then the killer framework is no longer seen as the new hottest thing to have on the CV. Yet, without Rails, no one would have cared enough for Ruby to matter.
There are more ways to be dead than being alive.
You just don’t see what you don’t wanna see.
Here, Embark new game engine in Rust hasn't gone anywhere,
https://medium.com/embarkstudios/embarks-creative-playground...
It even got a new release quite recently,
"we here at Embark been using this for over a year in production now for our Creative Playground & custom Rust engine that uses Vulkan, and hope it can be of use for more developers as we continue to build it out."
-- https://old.reddit.com/r/rust/comments/zrskiq/rustgpu_v04_re...
Yes they are also using Unreal for other titles, plenty of studios have more than one engine.
Lot of buzz for nothing, just like with Firefox
Rust doesn't seem capable enough for that kind of projects
Other comments mentions pieces of the Android Runtime being written in Rust, and that seems all Rust is able to provide, by-proxy uses
Still waiting for something like Kubernetes for Rust to really push the industry forward, so far, no bueno
https://github.com/EmbarkStudios/rust-ecosystem
Running containers on AWS?
https://www.infoq.com/news/2018/12/aws-firecracker/
What have you delivered in your top XVYZ language?
I don't have a top language, and to be honest i am a bit sad about the state of programming languages these days, it's all over the place and nobody seems to hate bloatware, so we get slow stuff that compiles slow all over the place
And i don't believe in "one language to rule them all" moto
https://survey.stackoverflow.co/2022/#section-worked-with-vs...
Not a reference, but it gives an idea about the people interested in Rust, they are mostly the web people, which says a lot about the lack of dynamics
> Running containers on AWS?
1 or 2 projects out of 1000s in a big company doesn't sound interesting
But you don't question a claim about the amount of LOC
You chose what please you as truth, and what doesn't as troll?