I feel like they could ask way more interesting questions. Probably the only really interesting thing here is people’s top complaints about Rust, which is to be fair a really great list.
I would really love to see something similar for other languages. Imagine if you could see ranked pros and cons for every language!
I would really love to see something similar for other languages.
Here’s the latest survey results for C++, FYI: https://isocpp.org/blog/2024/04/results-summary-2024-annual-cpp-developer-survey-lite
Wow, 14% from Germany? That’s incredible!
Also, 6.4% said they don’t use Rust because the community is unwelcoming, which is really sad to hear, but I’m glad the number is relatively low.
I’m also surprised “disk space usage” isn’t an issue for many. I just cleared out dozens of GB of disk use by Rust, and I had to fix my CI/CD to clear itself properly.
Anyway, interesting results, thanks for posting!
dozens of GB of disk use by Rust
I was well above 100GB the other day 😅. But I think there’s a problem with the setup as well
I’ve been there. This is just on a small personal project I’m working on every so often. It’s a tauri app, so there are a fair amount of dependencies, but certainly not GBs per build.
Ideally,
cargo build
could be configured to just take care of it. I really don’t need anything other than the most recent build per target, and I certainly don’t care about stuff from older compiler versions.cargo-sweep
is nice and I use it (that’s how I fixed my CI/CD), but it’s a little annoying and I don’t think a lot of people use it, hence why I expected it to be higher.
I’m also surprised “disk space usage” isn’t an issue for many. I just cleared out dozens of GB of disk use by Rust, and I had to fix my CI/CD to clear itself properly.
For me it’s just a matter or clearing the target directories used by older rust releases when I upgrade every 6 weeks.
cargo-sweep
is a godsend for this taskYeah, cargo-sweep is nice, I wish it was more automatic. When I make a build, I just want it to clear out old crap. Just keep whatever the latest is for each target.
I don’t understand the complaint of “subpar IDE support”.
It has the best IDE support of any language I’ve tried. It’s IDE support is also just a language server, which you can just download in your editor of choice and it just works. Are the people that complain about it not using rust-analyzer?
Also there is RustRover
It has the best IDE support of any language I’ve tried.
Definitely not the best - Java and Dart are waaay ahead.
But it’s pretty good. Better than C++ and Python.
My main issue with it is the speed. Rust-analyzer is ridiculous resource intensive.
Tbf less than 15% said it was a problem and the others is either “it’s good” or “could be better”. I definitely still have a few grievances with rust-analyzer, it could be better.
Sure, any software could be better. The question is, is it useful as-is and how does it compare to other language tooling? Is it fine, or do we need to really focus on getting it up to par?
Definitely useful and I think it compares pretty well to other tooling? My two biggest issues are compile times and “amnesia”. First of all, compile times because the feedback cycle can get really bad. But that’s not really rust-analyzer’s fault, that’s cargo/rustc.
But rust-analyzer also has this weird “amnesia”. Like if I have ran the checks and everything is good, I can go to definition and it will instantly bring me there. But if I make a small change and it starts running
cargo check
, it’s like it forgets everything until it’s done withcargo check
. I wish it still allowed me to use what it knew before and go to definitions and give suggestions and such.Yeah,
rust-analyzer
has been perfectly fine for me as well, though I honestly don’t expect a ton from my editor.weird “amnesia”
Ah, while it’s processing everything again. My project is pretty small and my computer is pretty fast, so I guess I haven’t noticed. I also don’t use a ton of its features, because I tend to already know where things are.
It’s definitely not a problem in my own projects, but at work is a different story. With a huge project, compile times becomes a real slog.