You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/what-do-people-love-about-rust.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -98,7 +98,7 @@ Take away the tooling and ecosystem, and you can't get started: or you can, but
98
98
99
99
> "For me, getting started with Rust, the language was challenging, but the tooling was incredibly easy... I could just start writing code and it would build and run, and that to me made a huge difference." -- Founder and CEO of company creating developer tools
100
100
>
101
-
> "Cargo is an amazing package manager. It is probably the best one I've ever worked with. I don't think I ever run into issues with cargo. It just works." -- Software engineer with production Rust experience
101
+
> "Cargo is an amazing package manager. It is probably the best one I've ever worked with. I don't think I ever run into issues with Cargo. It just works." -- Software engineer with production Rust experience
102
102
>
103
103
> "The Rust compiler is fantastic at kind of the errors it gives you. It's tremendously helpful in the type of errors it produces for it. But not just errors, but the fact it also catches the errors that other languages may not catch." -- Distinguished engineer working on cloud infrastructure services
104
104
@@ -134,7 +134,7 @@ The problem though is that sometimes the work to encode those invariants in type
134
134
>
135
135
> "Instead of spaghetti code, you have spaghetti typing" -- Platform architect at automotive semiconductor company
136
136
>
137
-
> I find it more opaque, harder to get my head around it. The types describe not just the interface of the thing but also the lifetime and how you are accessing it, whether it's on the stack or the heap, there's a lot of stuff packed into them." -- Software engineer working on data science platforms
137
+
> "I find it more opaque, harder to get my head around it. The types describe not just the interface of the thing but also the lifetime and how you are accessing it, whether it's on the stack or the heap, there's a lot of stuff packed into them." -- Software engineer working on data science platforms
138
138
139
139
This leads some to advocate for not using some of Rust's more complex features unless they are truly needed:
140
140
@@ -152,7 +152,7 @@ For Rust to provide that "trusted tool that will help you tackle new domains" ex
152
152
153
153
> "I was in favor of not using async, because the error messages were so hard to deal with." -- Desktop application developer
154
154
>
155
-
> "The fact that there are still plenty of situations where you go *that library looks useful, I want to use that library* and then that immediately locks you into one of Tokyo or one of the other runtimes, and you're like *that's a bit disappointing because I was trying to write a library as well and now now I'm locked into a runtime*." -- Safety systems engineer working on functional safety for Linux
155
+
> "The fact that there are still plenty of situations where you go *that library looks useful, I want to use that library* and then that immediately locks you into one of tokio-rs or one of the other runtimes, and you're like *that's a bit disappointing because I was trying to write a library as well and now now I'm locked into a runtime*." -- Safety systems engineer working on functional safety for Linux
156
156
>
157
157
> "We generally use Rust for services, and we use async a lot because a lot of libraries to interact with databases and other things are async. The times when we've had problems with this is like, um, unexplained high CPU usage, for example. The only really direct way to try to troubleshoot that or diagnose it is like, *OK, I'm going to attach GDB and I'm gonna try to see what all of the threads are doing*. GDB is -- I mean, this is not Rust's fault obviously -- but GDB is not a very easy to use tool, especially in a larger application. \[..\] And with async, it's, more difficult, because you don't see your code running, it's actually just sitting on the heap right now. Early on, I didn't actually realize that that was the case." -- Experienced Rust developer at a company using Rust and Python
158
158
@@ -176,7 +176,7 @@ The Rust org has historically been reluctant to "bless" particular crates in the
176
176
177
177
### Enumerate Rust's design goals and integrating them into our processes
178
178
179
-
We recommend creating an RFC that defines the goals we are shooting for as we work on Rust. The RFC should cover the experience of using Rust in total (language, tools, and libraries). This RFC could be authored by the user research team, though it's not clear who should accept it — perhaps the user research team itself, or perhaps the leadership council.
179
+
We recommend creating an RFC that defines the goals we are shooting for as we work on Rust. The RFC should cover the experience of using Rust in total (language, tools, and libraries). This RFC could be authored by the proposed User Research team, though it's not clear who should accept it — perhaps the User Research team itself, or perhaps the leadership council.
180
180
181
181
This post identified how the real "empowering magic" of Rust arises from achieving a number of different attributes all at once -- reliability, efficiency, low-level control, supportiveness, and so forth. It would be valuable to have a canonical list of those values that we could collectively refer to as a community and that we could use when evaluating RFCs or other proposed designs.
0 commit comments