My coworkers ask for help with a #Rust compiler error... *once*...
...and then I run and try to mechanize my explanation and put it back in the compiler.
Our dev tools need to talk to humans in the way humans talk. Nobody is an expert on everything, helping newcomers (with better tools, better docs, better errors) helps *everyone*.
That's really the trick behind the rustc diagnostic output: it's not about a technology, its an attitude.
rustc doesn't have good diagnostic messages because of some technological breakthrough. It has good diagnostic because we look at how people use our tools, noticing when things confuse people, and changing the output to match people's mental model.
@ekuber I think this is one important difference to c/c++ where everything follows the philosophy "humans should follow the technology" not the other way round
Especially c++ is unfriendly to beginners