6 ms·
I think Rust is probably too complex for the average enterprise developer who seldom thinks about code outside of work. Not that these developers aren't smart -
by mastry 7y ago
I think Rust is probably too complex for the average enterprise developer who seldom thinks about code outside of work. Not that these developers aren't smart - they just have different life priorities than a lot of HN readers and Rust experts.
- abc_lisper 7y agoThis is spot-on. Worked with enterprisy java devs .. seen their code. They couldn’t give a shit about code quality
- codesushi42 7y agoJava exists to make shitty code less shitty. But in reality it will often hide the shittiness through countless layers of abstraction. Java is a great glue language. But if the problem you are solving can't be fixed by glue, say performance, computationally heavy algorithms or something of that kind, then look elsewhere.
- seren 7y agoI am so to speak an industrial entreprise developer working with Vxworks on a medical device. This is exactly the kind of context where you don't mind if the compiler takes a bit longer or if you have to fight the borrow checker in exchange of not having a data race or a memory leak with catastrophic consequences at the wrong time. Today we are using static or dynamic code checker (which are not cheap) but it would be so much better if we could simply not create some kind of issues in the first place. I know that Rust is not a silver bullet either but having some Rust support in Vxworks makes so much sense. This is basically my secret wish of the last few years coming true. If anyone at Windriver is reading this, thank you! It does not mean we are going to rewrite everything tomorrow, but at least we can seriously consider that for new features we could introduce some Rust services in a few years likely.
- firethief 7y agoRust's complexity isn't accidental unless it's being used for a job where it's overkill. Achieving memory safety in non-GC languages (let alone the degree of other static safety Rust enables) is easier in Rust than C++.
- mevile 7y agoThe way I think about it is that Rust exposes all the hard stuff that's hidden in C++. C++ makes things look simpler than they are and eventually you end up in one nightmare scenario after another, because of all the hidden complexity. Rust just shoves all that complexity to the forefront, right in your face, so that you are forced to deal with it and don't end up in nightmare land later.
- codesushi42 7y agoHonest question, what part of Rust is more complex than C++, smart pointers and all? Because it's not evident.
- wiremine 7y agoI'm not a full time Rust developer, so your milage will vary: Rust is a more modern language, so there are a number of modern approaches that Rust uses that C++ can't due to backwards compatibility. And Rust isn't fundamentally an OOP language. I'd say Rust is a bit closer to C than C++, but that's a gross simplification. But I think what Rust does is forces the developer to address application complexity at compile time, instead of finding out about these problems during run time. Things like segfaults, race conditions, etc. are ferreted by the compiler. So, Rust might feel more complex, but in reality it's just forcing you to deal with those issues sooner rather than later.
- tomjakubowski 7y agoAnother gross simplification I like is: Rust is a memory safe C with type classes. (traits)
- codesushi42 7y agoTuring complete templates and inheritance make C++ far more complex I'd say then, even at compile time.
- firethief 7y ago