Rust 2020: Quality

My 2020 post will be very short, as most of my thinking of 2019 still applies.

Rust is known for its guarantees: stability, platform support, type safety and the RFC process. For a long time, those - pretty high - guarantees were also the primary source of high quality. But guarantees have become the baseline. Quality is what people actually find interesting. We already have examples of that: the Rust project ships 7 books and more non-book material, which is amazing for a programming language of our age.

I firmly believe that we should start thinking in terms of quality more. In which domains is Rust great? In which domains are there problems? Which of those problems are fundamental and hit everyone and which can be fixed by guidance around them? These answers are highly contextual and individual. Context here might even be time. What was accepted by our user base 3 years ago might not be acceptable today. Things that were perceived as a language problem 3 years ago might not be today, because people found good practice around them.

My experience with having these discussions more often is also that they don’t necessarily lead to more work, but to better invested work. Talking about quality is a constant conversation with people actually impacted by an issue. As a small example: I was under the constant impression that Rust wasn’t focused enough on getting Servo off the nightly train. Until I actually asked a Manish and got the response that Servo is quite happy with the state of the current language. Obviously, that’s no rigurous research and I’d have to ask more people, but having those conversations more and more in a structured fashions is my goal for next year.

“Where do we best invest our effort?” is hard to be answered with guarantees alone, it is best answered by investigating where work is needed.