Is it acceptable to nominate our own quotes? ...because I just stumbled upon a metaphor which I think has a shot at this.
Sure. Why not? People nominate their own crates.
In that case,
[Three paragraphs of analogy about knife-juggling]
Heck, if anyone wants to try that for a less divisive candidate for Quote of the Week, here's a more quotable formulation:
Programming is like juggling. Memory-unsafe programming is like juggling knives. Proper use of the
unsafekeyword is forcing audience members to climb onto the stage in full view of the juggler before they get into range of the knives.
-- /u/ssokolow @ https://www.reddit.com/r/rust/comments/eq1ddn/regarding_nikolay_actixweb_and_the_rust/fep1o6r/
...and another one I just found which is particularly insightful:
I think this is another story about the destructive power of the internet echo chamber, where the asymmetry of one person vs. a mob of people who are in reality probably not all that engaged with the problem but nevertheless have enough engagement to send a nastygram or two creates a distributed denial of decorum attack that no single human being should be expected to deal with "nicely". Our ancient instinctive tribal signals of whether or not you are approved by the tribe, tuned for tribes of 150 people or so, receive a message that 15,000% of the tribe thinks you are a bad person, and our natural human response to that is a lot of stress at best (our ancient instincts tell us that eviction from the tribe is a bad thing , even though in practical terms eviction from this particular tribe won't be much of a problem at all in the modern world).
-- jerf @ https://news.ycombinator.com/item?id=22075336
Especially the term "distributed denial of decorum attack".
(I'll try my hardest to make that my last submission this week. I went from a pre-actix-hullabaloo quote, to something of my own post-actix, to something of someone else's post-actix in such a short period of time, and the two "something of someone else's" ones are so different in what their focus is.)
This reminds me of juggling razor blades in C++ (lock free programming)
Also from @trentj:
it's kind of insane how automatized pull requests are in Rust.
"Rust is basically Haskell's athletic younger brother. Not as intellectual, but still smart and lifts weights."
-- icefox, Jan 22, in Discord chat #games-and-graphics channel
In context, I'm guessing the user intended that as a criticism. I think having criticisms as quote of the week is fine, but this one seems likely to be misinterpreted as praise.
I've started associating a shower of warnings with "success", because those only appear once all the errors have been taken care of
People argue about the color of a bike shed because even though it's a meaningless decision - it's still a decision that has to be made. The null choice is a very bad choice - if you don't paint the shed it'll rust. And there is no "default color" so you can't just say "just color it" - you have to pick a color.
Even seen someone argue about the pattern of the shed's paint? No. The pattern is not any more meaningful than the color, but unlike the color - there is a null choice. There is a default. Solid paint. And because there is a default, no one even thinks about using something else because why are you wasting company time and money on a pattern for a bike shed?
From my personal experience, when there is a default and the default is good enough, nobody bikesheds how to derive from the default. They only discuss it when there is a concrete problem with the default, where is doesn't fit your needs for whatever reason. And when you do have a concrete reason to derive from the default - you will derive from the default. Because you have to. And if the library does not support it - you'll switch the library.
-- /u/somebodddy on when opinionated design succeeds or fails to prevent bikeshedding
When chatting about using
async in an internal project my colleague shared a funny quote over chat:
2021 is supposedly the year of the async Rust desktop
For context, we were fighting with getting blocking code integrated with non-blocking since we wanted to do it incrementally.
Whoa there, you mean there is effort underway to solve the "red function / blue function" problem?
That sounds truly awesome.
Taken from io_uring presentation by Tyler Neely:
I can accept code in pull requests with a small fraction of the mental energy as I would need in auditing C/C++ due to compiler's strictness
The consistency angle really shouldn’t be overlooked. Performance is nice, but slow and consistent can still be planned for much more easily than inconsistent.
That was the big aha moment about Rust for me when I pushed out my first project using the language. Being nervous about it I had added way too much instrumentation so that I could know how every bit of it was responding to real traffic. But as soon as I started seeing the data, I was convinced that my instrumentation code was broken. The graphs I was seeing were just so...boring. Straight lines everywhere, no variation...after 24hrs, the slowest response (not P99...literally P100) was within 75ms of the fastest response.
(Especially that "But as soon as I started seeing the data, I was convinced that my instrumentation code was broken.")
Rust developers, on the other hand, are used to taking a lot of coffee breaks (or tea, cigarettes, sobbing, or whatever as the case may be — Rust developers have the spare time to nurse their demons).
-- @brson's tongue-in-the-cheek reference to Rust's compile times in https://pingcap.com/blog/rust-compilation-model-calamity/
Rust's predictable performance lands another strike for the team!
Even with just basic optimization, Rust was able to outperform the hyper hand-tuned Go version. This is a huge testament to how easy it is to write efficient programs with Rust compared to the deep dive we had to do with Go.
[..] After a bit of profiling and performance optimizations, we were able to beat Go on every single performance metric . Latency, CPU, and memory were all better in the Rust version.
Discord Engineer Jesse Howarth, in the blog post
"Why Discord is switching from go to Rust" (emphasis in original)
This Discord Blog documents tangible productivity benefits, improved performance, as well as platform maturity for Rust, great things for our community to show in 2020!
Also, the more predictable behaviour allowed them to increase cache-sizes without suffering catastrophic GC-spikes, leading to a factor-5 to factor-200 improvement, depending on the metric (the graphs are a bit too low-res to get more accurate numbers).
go [or Rust] style package management tools are designed to build programs that work. Not programs that work on Debian if you have the right libs installed, or on Windows 7 or newer, or whatever, but “if you compile it on an OS, it works on that OS”.