I love the care that goes into #rustlang compiler error messages and warnings. I've watched a few people learn the language from scratch over the last few years (including a 14-year-old), and having a built-in teacher makes such a difference.
One thing I wish could be improved is that sometimes the (stable) rust compiler complains that you haven't implemented some unstable, nightly-only trait.
I find this very unhelpful to newcomers, and when they ask me for help, I can't come up with a better explanation than "yeah, that message is kind of broken. What it should have said is _____".
Today's example: "the trait `Step` is not implemented for `Foo`".
The `Step` trait is unstable. How is an inexperienced user supposed to know what to do next, if that's the error message produced? Saying "you didn't do the thing" when the stable compiler does not allow the thing is a bad look.