Florian Leibert: What types of projects do you think Rust is best suited for?
Steve Klabnik: […] Another great use for Rust is when you’re coding something that has to be 100% accurate, which sounds like a strange concept because no one wants their code to be wrong, but very few programs must be 100% correct. Engineering is all about tradeoffs, and sometimes something that works 80% of the time is good enough. Rust contains a set of guarantees that tend to take a little bit longer to develop initially, but they do a really good job of forcing you to write correct code.
Obviously, no one would ever claim that every Rust program is perfect, but our users say that they tend to spend significantly less time debugging after the fact. One of our production users has said that they enjoy Rust because it’s boring operationally. Once they put it into production, they don’t have to worry about it ever again. In general, you just write it and then it does what it says and you forget about it. It’s both boring and exciting.
That’s exactly one reason why I like Rust so much. Once your project compiles and runs, you can forget about it. I’ve developed rs-collector in Rust and it’s running on 50+ machines for almost 2 years now. So far we haven’t had a single bug or crash! And that’s only because of Rust’s safety guarantees.
rs-collector makes heavy use of threads and we haven’t had a single concurrency related bug! None!