TWiR quote of the week

...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.)

8 Likes

This reminds me of juggling razor blades in C++ (lock free programming)

from @trentj :

14 Likes

Also from @trentj:

3 Likes

u/ericonr on https://www.reddit.com/r/embedded/comments/es8lo1/add_bare_metal_arm_cortexa_targets_to_rustc/

it's kind of insane how automatized pull requests are in Rust.

1 Like

"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

11 Likes

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.

2 Likes

I've started associating a shower of warnings with "success", because those only appear once all the errors have been taken care of

-- brundolf, on compiling rust code

7 Likes

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

14 Likes
5 Likes

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.

5 Likes

Whoa there, you mean there is effort underway to solve the "red function / blue function" problem?
"https://journal.stuffwithstuff.com/2015/02/01/what-color-is-your-function/

That sounds truly awesome.

1 Like

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

7 Likes

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.

-- tablair @ https://www.reddit.com/r/rust/comments/eytyug/why_discord_is_switching_from_go_to_rust/fgjjpiv/

(Especially that "But as soon as I started seeing the data, I was convinced that my instrumentation code was broken.")

8 Likes

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/

4 Likes

Rust's predictable performance lands another strike for the team! :grinning:

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).

9 Likes

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”.

https://wiki.alopex.li/LetsBeRealAboutDependencies

6 Likes

It's a safe system programming language which just happens, unlike something like Ada, to have a critical mass of hipsters and webdevs behind it.

-- RAKtheUndead on why Rust is so popular @ https://www.reddit.com/r/MechanicalKeyboards/comments/f2o7vu/a_handwired_unsplitted_ergo_keyboard_with_a/fheeltk/

(You've gotta at least grin at reading that.)

9 Likes

That is encouraging. Back in the day C and Unix were said to be promoted and spread by "hippies" from Berkeley. Sounds like Rust in on the right track then.

Another thing we should remember when talking to other-language folks:

14 Likes